Перенос плагина CRUD с Play 1.2.4 на 2.5.x: просмотр ошибок компиляции

Я новичок в 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: переменная fieldsHandler типа Array[String] не принимает параметры типа.
  • 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

Любая идея ? Ваша помощь будет оценена по достоинству. Спасибо.


person G.Haithem    schedule 24.01.2017    source источник
comment
Play 1.x и 2.x следует рассматривать как два разных фреймворка, так как последний ломает почти все. Мигрировать нельзя, нужно переписывать.   -  person c4k    schedule 09.03.2017


Ответы (1)


Я понял, что принцип crud-плагина противоречит новой логике составления scala-шаблонов. Итак, я начал новую общую реализацию crud. Спасибо

person G.Haithem    schedule 10.03.2017