0

我是 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

任何想法 ?您的帮助将不胜感激。谢谢。

4

1 回答 1

0

了解到 crud 插件的原理与编译 scala 模板的新逻辑是矛盾的。所以我开始了一个新的 crud 通用实现。谢谢

于 2017-03-10T15:23:07.183 回答