2017-01-13 4 views
1

を再生する私は、ルート・ファイル内の同じルートを持っていますが、私はScalaは同じルートに

http://localhost:9000/segments/counts?features=feature_1,feature_2-feature_3 
http://localhost:9000/segments/counts 

として両方のルートを呼んでいる。しかし、それは働いていない

GET   /counts         controllers.Application.getAllCountsByFeature(features) 
GET   /counts         controllers.Application.getAllCounts() 

を示すように、その作用が異なっています。私は、どのルートがクエリ文字列に基づいて呼び出されたかを認識するようにしたい。クエリ文字列が指定されている場合は、getAllCountsByFeatureメソッドなどが必要です。

どうすればよいですか? 私は

+2

ただ、1つのルートを使用私が推薦する1つのアクション – jilen

+0

内の別のクエリを実行します。 2つのルートまたは1つのルートを使用し、オプションのクエリパラメータを使用してコントローラ内のロジックを前に述べたものと同様に実行します – pedrorijo91

答えて

2

使用つのルートオプションのパラメータでプレイ2.5.9を使用してい

GET   /counts         controllers.Application.getAllCountsByFeature(features: Option[String]) 

、その後

def getAllCountsByFeature(features: Option[String]) = Action { 
    features match{ 
    case Some(f) => //.. 
    case None => getAllCounts() 
    } 
} 
関連する問題