我是 Playframework 的新手,我需要将 CRUD 插件从 Play-1.2.4 迁移到 Play-2.5.x 上的模块。我面临着一些奇怪的观点问题。例如 form.scala.html 组件有以下错误:
- app\views\tags\crud\form.scala.html:28:未找到:输入 fieldName
- app\views\tags\crud\form.scala.html:28: Array[String] 类型的变量 fieldsHandler 不接受类型参数。
- app\views\tags\crud\form.scala.html:31:未找到:值字段
这是表单文件的一段代码:
@(fields: List[String], obj: Object, typ: controllers.CRUD.ObjectType)(body: Html)
@import scala.Predef; var currentObject: Object = null; var currentType: controllers.CRUD.ObjectType = null; var fieldsHandler = new Array[String](10);
@for(fieldName <- fields) {
var am : String = "";
var field = @currentType.getField(fieldName);
@if(field == null){
throw new play.exceptions.TagInternalException("Field not found -> " + @fieldName)
}
@if(field.typ == "text") {
@tags.crud.textField(fieldName, currentObject[fieldName])
}
@if(field.typ == "password") {
@tags.crud.passwordField(fieldName, currentObject[fieldName])
}
@if(field.typ == "binary"){
@tags.crud.fileField(fieldName, currentObject[fieldName], currentObject.id )
}
}
--> 80% 的编译错误与变量识别有关!
build.sbt 文件中的一段:
scalaVersion := "2.11.7"
lazy val root = (project in file(".")).enablePlugins(PlayJava, PlayEbean, SbtTwirl)
fork in run := true
任何想法 ?您的帮助将不胜感激。谢谢。