【发布时间】:2015-07-06 05:31:37
【问题描述】:
我是play scala frame work 的新手,在我的项目中我想为此选择multiple values in drop down 我在select.scala.html 中使用了http://silviomoreto.github.io/bootstrap-select/ 这个插件并添加了所需的.css,.js 文件
select.scala.html
@import helper._
@(field: play.api.data.Field, options: Seq[(String,String)], args: (Symbol,Any)*)(implicit handler: FieldConstructor, messages: play.api.i18n.Messages)
<html>
<head>
<link rel="stylesheet" type="text/css" href="@routes.Assets.at("stylesheets/bootstrap-select.css")">
<link rel="stylesheet" type="text/css" href="@routes.Assets.at("stylesheets/bootstrap-select.min.css")">
<script type="text/javascript" src="@routes.Assets.at("javascripts/bootstrap-select.js")"></script>
</head>
@input(field, args:_*) { (id, name, value, htmlArgs) =>
@defining( if( htmlArgs.contains('multiple) ) "%s[]".format(name) else name ) { selectName =>
@defining( ( !field.indexes.isEmpty && htmlArgs.contains('multiple) ) match {
case true => field.indexes.map( i => field("[%s]".format(i)).value ).flatten.toSet
case _ => field.value.toSet
}){ values =>
<select id="@id" name="@selectName" @toHtmlArgs(htmlArgs) class="selectpicker" multiple>
@args.toMap.get('_default).map { defaultValue =>
<option class="blank" value="">@defaultValue</option>
}
@options.map { v =>
<option value="@v._1" @if(values.contains(v._1)){selected="selected"}>@v._2</option>
}
</select>
}}
}
</body>
</html>
Employees.scala controller class
package controllers
import play.api.mvc._
import play.api.data._
import play.api.data.Forms._
import views._
import models._
import play.api.i18n.Messages._
object Employees @Inject()(val messagesApi: MessagesApi) extends Controller with I18nSupport {
---
----
}
当我编译我的项目时,它显示以下错误
D:\employee>activator compile
[info] Loading project definition from D:\employee\project
[info] Set current project to employee(in build file:/D:/employee/)
[info] Compiling 37 Scala sources and 1 Java source to D:\employee\target\scala-2.11\classes...
[error] D:\employee\app\controll
ers\Employees.scala:11: ';' expected but '@' found.
[error] object Employees @Inject()(val messagesApi: MessagesApi) extends Contr
oller with I18nSupport {
[error] ^
[error] one error found
[error] (compile:compileIncremental) Compilation failed please help me to fix this issue.
【问题讨论】:
-
你在你的项目中看到
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.4.2")里面的project/plugins.sbt是什么版本? -
我的
plugins.sbt包含addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.9")
标签: scala drop-down-menu playframework playframework-2.3 typesafe-activator