我正在开发Zend Framework App。
在我的indexcontroller视图中查看/ scripts / index / index.phtml
<p><a href="<?php echo $this->url(array('controller'=>'index',
'action'=>'add'));?>">Add new album</a></p>
在我的浏览器中输出的只是url路径,因此它不会进行添加操作。 这是我在IndexController.php
中的添加操作 public function addAction()
{
// action body
$form = new Application_Form_User();
$form->submit->setLabel('Add');
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
$artist = $form->getValue('artist');
$title = $form->getValue('title');
$albums = new Application_Model_DbTable_Albums();
$albums->addUser($artist, $title);
$this->_helper->redirector('index');
} else {
$form->populate($formData);
}
}
}
我的add.phtml是
<?php
$this->title = "Add new album";
$this->headTitle($this->title);
echo $this->form ;
?>
为什么它不会添加动作。请建议 修改详情
我正在使用此pdf构建应用http://akrabat.com/wp-content/uploads/Getting-Started-with-Zend-Framework.pdf
第9页 我没有把这条线放到哪里,这些线是否必要?
$view = new Zend_View();
$view->setScriptPath('/path/to/scripts');
echo $view->render('script.php');
我还没有设置布局和CSS。但我的数据库列表即将到来,但我的添加Dction无法正常工作?请提出原因
答案 0 :(得分:0)
我在Bootstrap.php中添加了以下行 因为在我尝试构建REST API之前。
#$restRoute = new Zend_Rest_Route($frontController);
# $frontController->getRouter()->addRoute('default', $restRoute);
答案 1 :(得分:0)
在您的引导程序或任何地方启用错误报告:
error_reporting(E_ALL);
ini_set('display_errors', true);
或检查您的php错误日志,并在此处发布您收到的错误消息
答案 2 :(得分:0)
如果你能给我们你的路由初始化代码(在Boostrap.php或application.ini中),将会很有帮助。
初看起来,它可能是一个url汇编上下文误用。
Zend_View_Helper_Url是路由上下文,也就是它使用最后注册的路由。因此,如果您使用的是使用用户定义的静态路由而不是默认路由的页面,则帮助程序将使用用户定义的路径组合URL。
尝试在视图帮助器中定义路径名称,如下所示(我假设它是默认路径):
echo $this->url(array('controller'=>'index','action'=>'add'), 'default');