【问题标题】:Certain Pieces of a Web Page in MVCMVC 中网页的某些部分
【发布时间】:2011-04-12 20:48:29
【问题描述】:
出于显而易见的原因,我正在将客户的应用程序从一个构建为一个巨大项目的蹩脚的应用程序重写为 MVC 应用程序。
在查看其中的片段时,我注意到原始程序员有很多语句,他们根据登录的用户更改图像或放入不同的链接。
每个编写 MVC 应用程序的人是如何处理这个问题的?您是将用户名从控制器传递到视图以执行此简单逻辑还是应该由控制器处理所有这些?
【问题讨论】:
标签:
model-view-controller
design-patterns
lamp
【解决方案1】:
这应该在控制器或会话中设置,并为链接使用通用占位符。
即如果在会话中
$_SESSION['userLink1']= "URL";
//Later in the views create it as this
<a href="<?php echo $_SESSION['userLink1'];">
请记住,这假设无论用户如何,这些图像/链接都将始终存在,只是链接内容本身会发生变化。如果它在您所描述的用户级别上,请在登录时将所有链接加载到会话中,并且视图将适当地拉出它们。
要真正让它们进入会话,请使用您的登录控制器在成功登录时设置它们,如果非授权用户也可以查看给定页面,则在启动会话时填充一些默认占位符。