玩框架建设选择选项,包括一个无操作选项



我正在创建一个具有"Any"作为第一个选项的选择元素的搜索表单。其余选项是小部件id和名称。

变量myWidgets是三个实例的列表,我的目标是沿着这些行:

<select id="widget" name="widget">
    <option value="-1">Any</option>
    <option value="10">Widget Ten</option>
    <option value="20">Widget Twenty</option>
    <option value="30">Widget Thirty</option>
<select>

这是我用来生成它的Scala:

@helper.select(searchForm("widget"),
    Seq[(String, String)](("-1", "Any")) ++ 
    myWidgets.map(w => (new Tuple2[String, String](w.id.toString(), w.name)))
)

select()的第二个参数取一个Seq[(String, String)]。这可以像所示的那样工作,但是感觉很笨拙。是否有更好(或更合适)的方法来做到这一点?

那么数据来自哪里呢?对于选择,我使用MyEnum扩展枚举,我的MyEnum类有一个方法,如:

def toHtml: Vector[(String, String)] =  
("", "") +: super.values.toVector.map(m => (m.id.toString, m.toString))

在所有选择的顶部添加一个空白选项。

相关内容

最新更新