2013-12-16 36 views
1

我從github克隆了一個項目。這是yesnault/Play20StartApp。玩法框架中的奇怪語法錯誤2.1.1

我下載了2.1.1版本並將其導入到eclipse中。

我可以成功運行該應用程序,但eclipse一直告訴我,我的login.scala.html和wflash.scala.html中存在一些語法錯誤。

login.scala.html如下。

@(loginForm: Form[Application.Login]) 

@import helper._ 
@implicitFieldConstructor = @{ FieldConstructor(twitterBootstrapInput.render) } 

<h3>@Messages("signin.signin")</h3> 

@form(routes.Application.authenticate(), 'class -> "form-vertical") { 

@if(loginForm.hasGlobalErrors) { 
    <p class="error"> 
     <span class="label important">@loginForm.globalError.message</span> </p>} 

//值的消息不是選項的成員[play.api.data.FormError]

<fieldset> 
    @inputText(
     loginForm("email"), 
     'placeholder -> Messages("email"), 
     '_label -> null, 
     '_help -> Messages("signin.your.email") 
    ) 
    @inputPassword(
     loginForm("password"), 
     '_label -> null, 
     'placeholder -> Messages("password"), 
     '_help -> Messages("signin.your.password") 
    ) 
</fieldset> 

<div class="form-actions"> 
    <input type="submit" class="btn btn-primary" value="@Messages("signin.signin")"> 
    <small><a href="@controllers.account.routes.Reset.ask">@Messages("forgot.password")</a></small> 
</div> 

}

這裏是wflash.scala.html。

@import helper._ 
@import helper.twitterBootstrap._ 

未發現:價值閃光

@flash.map { 
    case (key, value) => { 
     <p class=""> 
      <span class="badge [email protected]">@value</span> 
     </p> 
    } 
} 

後,我在login.scala.html改變@ loginForm.globalError.message到@ loginForm.globalError.get.message,語法錯誤它會消失。

此外,如果我將wflash.scala.html更改爲此,則不會出現語法錯誤。

@(implicit flash: Flash) 
@import helper._ 
@import helper.twitterBootstrap._ 

@flash.data.map { 
case (key, value) => { 
    <p class=""> 
     <span class="badge [email protected]">@value</span> 
    </p> 
    } 
} 

問題是應用程序在我改變它們後無法成功運行。

localhost:9000中的網頁顯示「not found:type Flash」和「value get不是play.data.validation.ValidationError的成員」。

誰能告訴我解決方案?謝謝!

回答

1

結帳後,你應該收到cd到你的應用程序文件夾,並運行play eclipse讓它爲你創建有效的eclipse項目。

+0

當然,在我將它導入eclipse之前,我會運行eclipse。 – Dong