我了解到,您应该在 MVC-OOD 中将控制器类设置为用例,从上到下仅使用一种运行 MVC 类的方法。
是否可以在一个控制器中使用不同的方法来获得更多控制和更好的概览?
假设您想要运行一个控制器来显示登录表单(从视图获取 html 等)。如果用户未登录,同一控制器还将显示注销按钮。
这可以通过控制器中的单个方法来完成,但使用两种方法似乎更好。如果您需要登录表单,则调用一种方法;如果您想要注销按钮,则调用一种方法。
(只是一个例子)
那么,专业人士怎么说。每个控制器应该只包含一个“用例”方法,还是可以包含多个?
TL;DR -- you have misunderstood the MVC design pattern and are doing it wrong.
控制器不负责呈现界面,也不负责表示逻辑。控制器不display任何事物。相反,每个控制器的方法处理不同的用户请求。它从所述请求中提取数据并将其传递到模型层和关联的视图。
关于显示内容和如何显示的决定属于视图的范围。视图包含 MVC 模式中的表示逻辑。在 Web 应用程序的上下文中,视图创建响应。他们可以从多个模板组成一个模板,或者只发送一个 HTTP 标头。
控制器可以通过将请求的某些特定值传递给关联视图来向该视图发出信号,但视图中的大多数决策都是基于视图从模型层中的不同服务请求的信息。
控制器的方法基于用户可以发送的请求类型。例如,在身份验证表单中,它可能是:GET /login
and/or POST /login
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)