我是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.
答案 0 :(得分:0)
你应该使用课程。对象具有与guice托管依赖项不同的范围和生命周期。
class Employees @Inject()(val messagesApi: MessagesApi)