我很新的Zend(阅读有关路由器和控制器的文档)。Zend渲染静态/动态多控制器
我StaticController
和IndexController
:
class StaticController extends Zend_Controller_Action
{
public function displayAction()
{
$page = $this->getRequest()->getParam('filename');
$this->render($page);
}
}
class IndexController extends Zend_Controller_Action
{
public function indexAction()
{
$albums = new Application_Model_DbTable_Albums();
$this->view->albums = $albums->fetchAll();
}
public function registerAction()
{
...
}
}
的application.ini:
resources.router.routes.staticpage.route = /:filename
resources.router.routes.staticpage.defaults.controller = static
resources.router.routes.staticpage.defaults.action = display
我的静态内容的网址是:site.com/faq
site.com/privacy
...
这些工作,但是其他诸如site.com/register
用途StaticController
而不是IndexController
,我不能说我很惊讶这种行为。
这些静态页面(关于我们,术语和条件...)需要包含在用于.po
翻译的zend逻辑中。
我可以想出很多不同的方式来实现Zend框架之外的这种方式,但真的想要做到这一点正确的方式。
如何区分静态和动态内容,并保持漂亮的URL?
任何帮助将不胜感激!
我不太确定我是否理解这个问题。如果你去site.com/faq,应该加载FaqController类的indexAction。你的示例URL都不应该进入索引或静态控制器。 – CashIsClay
我已经添加了application.ini。我如何区分静态和动态内容,并保持漂亮的URL? - – Sparkup
你怎么不只是创建一个FaqController和一个什么都不做而是渲染视图的PrivacyController?例如在FaqController'公共功能indexAction(){/ *显示视图* /}' – drew010