【问题标题】:unable to access zend views from controller file无法从控制器文件访问 zend 视图
【发布时间】:2011-07-07 01:57:48
【问题描述】:

我可以在控制器文件中打印表单内容,但是当我将表单视图指定为$this->view->form = $form 并尝试在login.phtml 文件中使用echo $this->form 显示表单设计时,无法查看表单设计,而是显示空白页....

可能是什么问题??

【问题讨论】:

  • 在您的application.ini 文件中将显示错误设置为1,看看是否有任何错误
  • @experimentX.. 我已将显示错误设置为 1,但没有看到任何错误。

标签: zend-framework zend-form zend-controller zend-layout


【解决方案1】:

看起来应该可以了:

// in the controller
$this->view->form = $form;

// in the view
<?= $this->form ?>

所以问题出在其他地方。

显示空白页可能是因为error_reporting被关闭了。

更新application.ini 并设置error_reporting,向true 显示错误并抛出异常以查看实际发生的情况。

编辑:

检查事项:

  • 您的视图是否已初始化?
  • 您的application.ini 是否包含任何resources.view[]=
  • 您不是不小心覆盖了视图吗? $this-&gt;view = null

【讨论】:

  • 我的说法是$this->view->form = $form;我收到以下错误消息.... 严格标准:从第 81 行的 C:\dev\workspaces\adxweb\application\adxsearch\modules\account\controllers\AuthController.php 中的空值创建默认对象
  • @lakshman 所以看看那一行并找出问题所在。也许您以某种方式禁用了视图?
  • Hmmm....该行在控制器文件中包含以下内容,当我将 echo 作为“ echo $this->getView()->form = $form; ”时它甚至显示表单但是当删除 echo 并在 login.phtml 文件中使用以下语句“echo $this->form”时,它没有显示表单设计......我真的不知道如何跟踪这个......请建议如果任何获得视图的替代方式...ty
  • @lakshman 在行前和行前使用Zend_Debug::dump($this-&gt;view) 等等,直到你得到真正的视图对象转储而不是空。
  • 请查看我的代码...我已编辑您的回复并添加到其中...感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-27
  • 2016-02-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多