2012-07-22 40 views
4

這是我Application.Scala編譯錯誤:未發現:在遊戲框架值nonEmptyText同時使用Scala的

package controllers 

import play.api._ 
import play.api.data.Form 
import play.api.mvc._ 



import _root_.scala.xml.Text 


object Application extends Controller { 

    def index = Action { 
    Redirect(routes.Application.tasks) 
    } 


    def deleteTask(id: Long) = TODO 

    val taskForm = Form(
    "label" -> nonEmptyText 
) 
def tasks = Action { 
    Ok(views.html.index(Task.all(), taskForm)) 
} 

    def newTask = Action { implicit request => 
    taskForm.bindFromRequest.fold(
    errors => BadRequest(views.html.index(Task.all(), errors)), 
    label => { 
     Task.create(label) 
     Redirect(routes.Application.tasks) 
    } 
) 
} 
} 

我用打2.0框架。我錯在哪裏得到這樣的錯誤?

+0

我不知道玩,但從你的例子,你期望'nonEmptyText'來自哪裏?它當然不是在那個代碼片段的任何地方定義的。也許['Forms.nonEmptyText'](http://osdir.com/ml/play-framework/2012-05/msg02003.html)? – 2012-07-22 15:24:23

+0

我以爲這個導入_root_.scala.xml.Text照顧了。如何去做呢?新手到斯卡拉。 – Hick 2012-07-22 15:26:30

+1

看起來好像是在play.api.data.Forms中定義的:https://github.com/playframework/Play20/blob/master/framework/src/play/src/main/scala/play/api/data/ Forms.scala – 2012-07-22 15:28:13

回答

5

您可以瀏覽Play 2文檔here。通過查看索引,我發現nonEmptyText包含在play.api.data.Forms對象中。

因此,您需要按照已經建議的方式添加import play.api.data.Forms._,或者使用Forms.nonEmptyText替換當前未找到的符號,因爲它已經被導入。

0

我發現重新啓動服務器解決了我的問題。

相關問題