这是我的module.config.php
return [
'router' => [
'routes' => [
'home' => [
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => [
'route' => '/',
'defaults' => [
'controller' => 'rotation',
'action' => 'add',
],
],
],
这是我的add.phtml。
<?php
$form = $this->form;
$form->setAttribute('action',
$this->url('home/default', //your route name ...
array('controller'=>'rotation', 'action' => 'add')));
$form->prepare();
echo $this->form()->openTag($form);
echo $this->formRow($form->get('profilename'));
echo $this->form()->closeTag();
在第$this->url('home/default', //your route name ...
array('controller'=>'rotation', 'action' => 'add')));
行中,我收到错误消息。它没有显示任何内容,但是当我删除该行时,它会显示文本框。
我的问题是我在代码中放入的url是正确还是错误?感谢
答案 0 :(得分:1)
要使用网址助手生成该路线网址,您不需要传递任何参数,因为您已在defaults
options
下指定了这些参数。此外,因为它是一个文字,我不认为你甚至可以改变行动(这种类型的路线不是变量)。
旁注:您不需要传递整个路由类名称,因为ZF2已经在Literal
(不区分大小写)下注册了它,因此您可以缩短type
密钥的值。
$this->url('home')
应该返回您期望的结果。