图片中 选中部分为传统的页面导航(与用户登录权限有关)。该选中部分多个页面需要调用。出于对项目维护性的考虑,想将选中部分单独提出来单独的文件。在模板文件中通过include 引入该文件内容。如图2
.这时问题来了,针对include 只是引入该路径的项目的html,并没有调用controller。引入页面的显示的数据,还需要一个controller来相关处理。看了一些其他童鞋的例子,往往通过继承公用controller,或者跨域调用对应的Controller、Event实现后台 给前台include html段赋值。感觉这样开发很不易维护。所以 尝试使用widget 扩展方法。建立扩展类,指向对应扩展html。通过前台html调用W方法实现页面的布局的模块化。如代码1class LayoutWidget extends Controller
{
public function getDemo($id=0)
{
// echo "this is public widget fun getDemo".$id;
$this->assign('id',$id);
$content=$this->fetch('Layout:two-menu-2Index');
//echo $content;
// echo "this is Widget getDemo";
// $value['demo']='this is demo';
// $content=$this->renderFile('Layout/two-menu-2LeftSidebar',$value);
// $this->display('Admin@Layout:two-menu-2Sidebar');
// return $this->fetch("Layout:two-menu-2Sidebar");
# code...
}
}注释内容都是 之前实现失败的内容。前台模板只有echo输出有效。其余没有任何效果。还请哪位大侠分享自己的经验,与小弟分享 最佳答案