0

我是新手,scala 和 akka,使用 sbt 构建它并通过在 Web 浏览器中加载 localhost 来编译它时出现错误。我得到的浏览器错误是:

对路由的编译错误引用不明确;它通过 import controllers._ 和 import models._ 在同一范围内导入两次。

In /Users/Louis/Documents/play_actors/app/views/form.scala.html at line 9.
5@main(Html("Calculate Pi")) {
6    
7    <h2>Calculate Pi</h2>
8    
9    @helper.form(action = routes.Pi.submit) { 
10        
11        <fieldset>
12            <legend>Pi Options</legend>

我不确定为什么会收到此错误。我从 Activity.scala 调用 html 文件:

package controllers

import play.api._
import play.api.mvc._

import views._

object Application extends Controller {

    def index = Action {
        Ok(html.form(Pi.optionsForm))
    }

}

提前致谢。

4

1 回答 1

1

Play 会生成许多 Scala 文件,包括基于您的routes文件和模板的文件。target/scala.2.9.1/src_managed如果您在尝试编译应用程序后查看该目录,您应该会找到一个views.html包含模板的 Scala 版本的包和一个包含routes.

除了许多 Play 自己的包外,Play 模板会自动导入控制器和模型包中的所有内容。这包括从您的路由文件生成的路由类,它允许您以显示的方式引用它们。

我假设您的模型包中必须有一些对象或类共享名称路由,因此会产生编译器无法解决的冲突。

于 2012-07-25T12:52:44.543 回答