Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为具有不同权限的不同用户显示不同的视图_Php_Templates_Permissions_Views_Symfony 1.4 - Fatal编程技术网

Php 为具有不同权限的不同用户显示不同的视图

Php 为具有不同权限的不同用户显示不同的视图,php,templates,permissions,views,symfony-1.4,Php,Templates,Permissions,Views,Symfony 1.4,我正在开发一个类似社交网络的网站,我在如何管理不同类型用户的视图方面遇到了一些麻烦。我有几个页面,它的内容和结果视图取决于用户权限。 例如,如果用户是某个组的成员(具有成员资格凭证),则可以在该组页面中看到很多内容,但如果他不是,则模板应该有很多不同 最简单的方法是使用IF结构控制页面的每个部分。但这有点恶心,我不喜欢 你有什么更好的想法吗?或者如果是解决这种情况的最好办法 感谢您的帮助。这取决于您创建模板的方式。。) 组合插槽、部件和组件。这可能是最简单、最“可读”的解决方案。它将逻辑划分为易

我正在开发一个类似社交网络的网站,我在如何管理不同类型用户的视图方面遇到了一些麻烦。我有几个页面,它的内容和结果视图取决于用户权限。 例如,如果用户是某个组的成员(具有成员资格凭证),则可以在该组页面中看到很多内容,但如果他不是,则模板应该有很多不同

最简单的方法是使用IF结构控制页面的每个部分。但这有点恶心,我不喜欢

你有什么更好的想法吗?或者如果是解决这种情况的最好办法


感谢您的帮助。

这取决于您创建模板的方式。。)

  • 组合插槽、部件和组件。这可能是最简单、最“可读”的解决方案。它将逻辑划分为易于重用的块
  • 您可以创建单独的布局,并在模板中调用
    (将
    if
    -语句添加到分部并包含分部)
  • 或者创建自己的基本操作类,它在
    preExecute()
    中设置模板(
    this->setLayout('template\u user')
  • 创建单独的操作,并根据用户的权限转发用户

  • 我想第一个:——)

    谢谢。其中大多数都在我的脑海里,但我想我也会选择第一个。