2012-04-09 5 views
4

私はScalaの初心者ですので、私がここでばかばかしい場合は私を許してください!スカラーテンプレートのhtmlヘルパー "options"を使用してドロップダウンを設定する方法(play 2.0)

私はplay2.0/Scalaを割り当てに使用しています。

個別の値(ここではtimesheetId)とラベル(2つの日付値の連結)をドロップダウンに取り込みたいとします。だから私はこれをやった。

@select(effortForm("timesheetId"),options(timesheets.map(aTimesheet=> aTimesheet.timesheetId.toString -> (aTimesheet.fromDate + " to " + aTimesheet.toDate))),'_label->"Choose Timesheet (*)") 

しかし、ページには、選択の下にあるオプションについて(タプルとして)同じ値で埋めドロップダウンとラベルを持っています。

オーバーロードメソッド値は、[適用](一覧[(java.lang.Stringで、java.lang.Stringで)])に適用することはできません

私はこれを見たいと思って、結果として

<option value="1">Sun Apr 08 18:23:32 PDT 2012 to Sun Apr 08 18:23:32 PDT 2012</option> 

助けてください!

答えて

16

はこれを試してみてください:2番目のパラメータは、すでにあなたのtimesheets.map{ }用ケースだろうSeq[(String, String)]でなければなりませんように

@select(
    effortForm("timesheetId"), 
    timesheets.map{ t => 
    t.timesheetId.toString -> (t.fromDate + " to " + t.toDate) 
    }, 
    '_label- > "Choose Timesheet (*)" 
) 

selectの実装を見てみると、それが見えます。

options(...)は、便宜的に、Seq[(String, String)]を構築する方法を提供し、ここで適用する方法はありません。

+0

ありがとう、それは働いた! – Gautam

+0

努力のためにチャップに+1を与えることができました... – Spider

0

プレイインストールに付属するサンプル/ Javaインストールディレクトリには、優れたサンプルがあります。 「フォーム」を参照してください。 SignUp - >国

関連する問題