我正在开发一个像网站一样的社交网络,我在如何管理不同类型用户的观点方面遇到了一些麻烦。我有几个页面,它的内容和结果视图取决于用户的权限。例如,如果用户是一个组的成员(有成员证书)可以看到很多东西在该组页面,但如果他不是,模板应该是这么多不同。
最简单的方法是用IF结构控制页面的每个部分。但有点恶心,我不喜欢。
对于这种情况,你有什么更好的主意或最好的解决方案吗?
谢谢你的帮助。
这取决于你如何将喜欢创建你的模板。: -)
- 组合槽,部分和组件。这可能是最简单和最"可读"的解决方案。它将逻辑分离为易于重用的块。
- 您可以创建单独的布局,并在模板中调用
<?php decorate_with('template_user'); ?>
(将if
-语句添加到partial并包含partial) - 或创建自己的基本动作类,在
preExecute()
中设置模板(this->setLayout('template_user')
) - 创建单独的动作,并根据用户的权限转发用户
我选第一个:-)