2012-04-09 21 views
4

我真的是Scala的首发者,所以请原谅我,如果我在这里愚蠢!如何在scala模板中使用html助手“选项”来填充下拉列表(play 2.0)

我使用play2.0/Scala进行作业。

我想填充一个具有不同值(timeheetId这里)和标签(一个2个日期值concat)的下拉列表。所以我做到了。

@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

试试这个:

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

select实施看,它看起来像第二个参数应该是一个Seq[(String, String)]这会已经是你的timesheets.map{ }的情况。

options(...)提供了方便的方法来构建Seq[(String, String)],并且没有一种适用于此的方法。

+0

非常感谢,它的工作! – Gautam 2012-04-09 20:23:11

+0

可以给这个人一个+1的努力,然后...... – Spider 2012-06-16 16:56:55

0

在您的游戏安装附带的samples/java安装目录中有一个很好的例子。请参阅“表格”。注册 - >国家

相关问题