我的添加表单没有显示

时间:2011-01-22 18:23:16

标签: php zend-framework

我正在开发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无法正常工作?请提出原因

3 个答案:

答案 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');