3

我正在尝试从doc运行 hello world 应用程序。

我收到以下错误:

render(java.lang.String) in views.html.index cannot be applied to (play.data.Form<controllers.Application.Hello>)

指向以下代码块:

  /**
   * Home page
  */
  public static Result index() {
     return ok(index.render(form(Hello.class)));
  }

Eclipse 也无法解析索引对象上的 .render 方法。

the method render(String) in the type index is not applicable for the arguments (Form<Application.Hello>)

我定义了以下导入:

package controllers;

import play.*;
import play.mvc.*;
import play.data.*;
import play.data.validation.Constraints.*;

import java.util.*;
import views.html.*;

hello.scala.html 和 index.scala.html 也可以在文件夹 app/views/ 中找到

知道我做错了什么吗?

4

1 回答 1

9

Play 2.0 中的每个视图都是包含参数的 Scala 函数,很可能您在开头声明的 index.sacala.html 字符串中拥有:

@(message: String)

它应该是你的形式:

在控制器中:

final static Form<MyModel> myForm = form(MyModel.class);

public static Result blank() {
    return ok(formNew.render(myForm));
}

在视图中:

@(myForm: Form[MyModel])  
于 2012-04-05T15:27:11.100 回答