我的应用程序 (view1) 的主菜单包含必须仅在用户登录时显示的选项 (view2)。在 view1 中调用了一个控制器方法。此方法检查用户并以用户作为参数返回 view2。
视图1:
@import com.feth.play.module.pa.views.html._
<div class="container-fluid">
<ul>
<li><a href="#">menu 1</a></li>
<li><a href="#">menu 2</a></li>
</ul>
</div>
<div id="logged">
@controllers.HomeController.showOptions()
</div>
HomeController 中的方法:
public Html showOptions(){
final User localUser = getLocalUser(session());
return view2.render(localUser);
}
视图2:
@(logged: User = null)
@if(logged!=null) {
<div id="userMenu">
<ul class='nav'>
<li><a href="#">user option 1</a></li>
<li><a href="#">user option 2</a></li>
</ul>
</div>
编译器显示此错误:
值 showOptions 不是 controllers.ReverseHomeController 的成员
我没有太多的游戏经验,所以我不确定这是调用控制器方法的正确方法。我也试过
@routes.HomeController.showOptions()
但后来我得到
不能使用返回 play.twirl.api.Html 的方法作为请求的处理程序
感谢所有帮助。谢谢 !