【发布时间】:2010-11-28 19:22:42
【问题描述】:
我仍然对 MVC 应该如何工作感到有些困惑。
假设我有一个销售小部件的网站。我有一个列表页面/widgets/list 和一个产品页面/widgets/product/123。
这两者都可以使用widget 控制器并调用list 和product 方法——到目前为止已经足够简单了。假设我还有其他几个控制器来处理各种事情。
现在我在我的标题中添加了一个时事通讯注册框 - 即在网站的每个页面上。
这将如何运作?我知道它应该提交给/newsletter/signup
但是如果出现错误(比如您没有正确填写您的电子邮件地址)会发生什么?它应该显示您所在的任何页面(例如/widgets/list),但newsletter 控制器需要运行。 widget 控制器不知道 newsletter 控制器,所以我不能把代码放在那里......这应该如何工作?
编辑:请不要使用 AJAX - 我可以更容易理解。将此视为禁用 javascript 时的后备。
编辑 2:任何涵盖此类事情的示例或教程将不胜感激
编辑 3:视图是否允许调用操作?例如标头可能会调用Newsletter->index()
【问题讨论】:
标签: model-view-controller language-agnostic design-patterns