sor*_*ist 5 php model-view-controller kohana hmvc
所以,我认为我理解它的基本术语中的级联文件系统,但我似乎无法围绕MVC的'H'ierachy结构.有人能告诉我使用HMVC而不是MVC的优势吗?它是基本的预期功能吗?
谢谢你的时间!
您可以在内部请求页面(路由器找到控制器和操作).你可以这样做:
class Controller_Menu extends Controller
{
public function action_index()
{
$this->request->response = view stuff ...
$this->request->response->set('...', ...) // some vars
}
}
Run Code Online (Sandbox Code Playgroud)
和
class Controller_Home extends Controller
{
public function action_index()
{
$this->request->response = ...; // some view stuff...
$this->request->response->set('menu',
Request::factory('menu')->execute()->response // here happens the magic
);
}
}
Run Code Online (Sandbox Code Playgroud)
每个拥有菜单的页面都不必执行加载菜单等所有逻辑(例如,从模型中).您只需向控制器发出请求,执行它并获得结果.正确使用时非常有用.
HMVC更适合Widgets.例如,Calendar小部件可能有自己的控制器,模型和视图集,您只需调用其控制器即可从主页面内呈现某个视图以嵌入小部件.
重点是可重用的GUI元素.请参阅此处以获取更多信息:http://www.javaworld.com/javaworld/jw-07-2000/jw-0721-hmvc.html.
编辑:这是一个以PHP为中心的实际链接:http://techportal.inviqa.com/2010/02/22/scaling-web-applications-with-hmvc/.似乎也有更好的插图.
| 归档时间: |
|
| 查看次数: |
1928 次 |
| 最近记录: |