MVC for Web App:按钮显示代码应该在视图还是模型中?

时间:2013-01-05 08:43:03

标签: java ajax spring-mvc

我已经构建了一个使用Ajax和Spring MVC的Web应用程序游戏。

当玩家按下屏幕上的“开始新游戏”按钮时,我在View中的代码会隐藏该按钮并显示其他游戏按钮。此逻辑位于视图中,而不在模型中。

我的问题是,在视图中拥有这样的逻辑是不是很糟糕的MVC实践?视图应该“尽可能愚蠢”吗?

所有其他逻辑都在我的模型中。

1 个答案:

答案 0 :(得分:0)

这在我看来是一个哲学问题。

在MVC中,模型应该是无逻辑的,控制器包含控制器逻辑,并且视图包含视图逻辑。这意味着您的视图中应该有逻辑,但只是与模型显示相关的逻辑。

为了将所有逻辑放在控制器中,您可以做的最好的事情是在按下“开始新游戏”按钮时触发Ajax调用,并从控制器返回true。然后你必须在你的Javascript中有一些视图逻辑位,它隐藏了“开始”按钮并显示其他游戏按钮。

打开和关闭按钮是视图逻辑。你无法避免将它放入视图中。