【发布时间】:2013-02-11 18:21:37
【问题描述】:
我正在构建一个有 3 个用户组的网站,让 X、Y 和 Z。
在我的控制器上,我目前正在执行以下操作:
if(user_group="X"){
//logic goes here
load_view("X");
}
elseif(user_group="Y"){
//logic goes here
load_view("Y");
}
elseif(user_group="Z"){
//logic goes here
load_view("Z");
}
我这样做的原因是因为每个用户都应该加载一个完全不同的页面,用户基本上不会分享他们所看到的任何共同点,所以我认为加载不同的视图看起来会更干净取决于用户组。
我可以为不同的用户加载相同的视图:
if($user="X"){
//view HTML
}
elseif($user="Y"){
//view HTML
}
elseif($user="Z"){
//view HTML
}
在这种情况下你会怎么做?加载不同的视图?加载相同的视图?我“长大”听说将编程逻辑排除在视图之外,所以我只是想知道社区认为什么更好。
【问题讨论】:
-
在此使用 ifelse 是不正确的。如果在其他日子出现+5组,你会怎么做。我会使用 getGroupView($group_id) {} 之类的方法,如果组不存在,它将呈现视图并呈现 404。如果视图模板不存在应该是例外
-
编码现在并不重要,在这一点上它更像是一个逻辑问题,上面的代码只是我快速输入的东西来翻译我的错误解释。
标签: php codeigniter templates