好的,问题如下。我有一个简单的zend框架2应用程序与模块路由器,控制器和视图,我可以从页面查看表,选择添加编辑或从所述表中删除项目。就ADD和EDIT而言,代码就像魅力一样,现在,当我想删除某些东西时,它只输出以下内容:
Zend\View\Renderer\PhpRenderer::render: Unable to render template "system/system/delete"; resolver could not resolve to a file
这使得文件夹上存在文件IS绝对没有SENSE,而且我使用我的浏览器访问的另一个视图URL工作正常所有视图(ADD,EDIT和INDEX)工作正常,没问题,怎么可以该程序告诉我一个文件,显然存在,只是坐在我目前使用的其他文件旁边“不存在”。
这是我的文件夹结构:
如您所见,所有视图都在同一个文件夹中,我从网址调用的所有其他视图都打开并正常工作。那为什么这个不起作用?。
我的控制器有以下删除操作:
public function deleteAction()
{
$id = (int) $this->params()->fromRoute('id', 0);
if (!$id) {
return $this->redirect()->toRoute('system');
}
$request = $this->getRequest();
if ($request->isPost()) {
$del = $request->getPost('del', 'No');
if ($del == 'Yes') {
$id = (int) $request->getPost('id');
$this->getUserTable()->deleteUser($id);
}
// Redirect to list of System
return $this->redirect()->toRoute('system');
}
return array(
'id' => $id,
'system' => $this->getUserTable()->getUser($id)
);
}
这是删除视图的代码:
<?php
$title = 'Delete user';
$this->headTitle($title);
?>
<h1><?php echo $this->escapeHtml($title); ?></h1>
<div>
<p>Are you sure that you want to delete </p>
<p> Username: '<?php echo $this->escapeHtml($system->username); ?>'
First name: '<?php echo $this->escapeHtml($system->fisrt_name); ?>'?
</p>
</div>
<?php
$url = $this->url('system', array(
'action' => 'delete',
'id' => $this->id,
));
?>
<form action="<?php echo $url; ?>" method="post">
<div>
<input type="hidden" name="id" value="<?php echo (int) $system->id; ?>" />
<input type="submit" name="del" value="Yes" />
<input type="submit" name="del" value="No" />
</div>
</form>
我一直在看代码,但我只是无助,我无法看到它发现任何问题或为什么会发生这种情况,这让我觉得真的很生气,所以我呼吁你的“l33t haxxor”编码知识解决这个问题。
提前致谢。
答案 0 :(得分:0)
嗯,我刚刚发现这个错误,实际上非常有趣,这个问题在放弃了所有的希望之后,在我说“嗯,我只是至少犯下我所拥有的东西”之前发现了我的svn repo“只是受到来自SVN的错误的欢迎,读取”文件delete.phtml上的无效字符'0x0a'“所以显然zend无法呈现视图的原因是因为在文件名中,这个神秘字符被添加一些如何(我认为这一个对应于换行符或类似的东西没有实际检查)。所以,对于svn?。
非常感谢您的所有评论并抱歉浪费您的时间:/。