4

我的控制器中有这两种方法:

public static void index() {
   List<Tweet> tweets = Tweet.findLatest();
   render(Template("index.html").params(tweets).render());
}


public static void create(String tweet) {
   Tweet t = new Tweet();
   t.tweet = tweet;
   t.save();
   render(Template("index.html").params(t).render());
}

现在路线对我大喊“不能使用返回 Unit 作为处理程序的方法”。我的路由文件中定义了这个默认路由:

GET / controllers.Application.index()

可能的原因是什么?

4

2 回答 2

11

Raul,控制器的每个动作都应该是静态的并返回 Result

public static Result index() {
      List<Tweet> tweets = Tweet.findLatest();
      return ok(Template("index.html").params(tweets).render());
}
于 2012-04-18T05:26:48.853 回答
0

我觉得应该是这样的:

...
return ok(
  Template("index.html").params(tweets).render()
);

...

return ok(
  Template("index.html").params(t).render()
);
...
于 2012-04-18T04:25:07.577 回答