【发布时间】:2012-11-18 17:01:44
【问题描述】:
我正在使用适用于 PHP 的 Lithium 框架开发一个网站,我的控制器和视图需要有两个子目录(即管理员和博客):
-controllers
-admin
HomeController.php
...
-blog
HomeController.php
...
HomeController.php
...
-views
-admin
-home
index.html.php
...
...
-blog
-home
index.html.php
...
...
-layouts
default.html.php
admin.html.php
blog.html.php
到目前为止,我已经发现了允许使用Dispach::config()方法在控制器中使用子域的方法:
Dispatcher::config(array('rules' => array(
'admin' => array('controller' => 'app\controllers\admin\{:controller}Controller'),
'blog' => array('controller' => 'app\controllers\blog\{:controller}Controller'),
)));
这在您使用以下路由时有效:
$options = array('continue' => true);
Router::connect('/admin', array(
'admin' => true,
'controller' => 'Home'
), $options);
Router::connect('/admin/{:args}', array(
'admin' => true
), $options);
Router::connect('/blog', array(
'blog' => true,
'controller' => 'Home'
), $options);
Router::connect('/blog/{:args}', array(
'blog' => true
), $options);
现在我遇到的问题是我不知道如何将其设置为自动使用admin/blog 模板和admin/blog 视图文件夹。
【问题讨论】: