Symfony1 添加成功后重定向到列表页的正确方法
我确信这是一个简单的问题,但在Symfony 1.4中。提交表单以添加自动转到列表所有页面的最佳方式是什么?一旦找到通向列表所有页面的路径名称,我们称之为stuff_index,您只需执行以下操作:Symfony1 添加成功后重定向到列表页的正确方法,symfony1,Symfony1,我确信这是一个简单的问题,但在Symfony 1.4中。提交表单以添加自动转到列表所有页面的最佳方式是什么?一旦找到通向列表所有页面的路径名称,我们称之为stuff_index,您只需执行以下操作:$this->重定向(“@stuff_index”)在典型的symfony设置中,总体思路是: public function executeCreate($request) { $form = new FooForm(); if ($request->isMethod('post'))
$this->重定向(“@stuff_index”)代码>在典型的symfony设置中,总体思路是:
public function executeCreate($request) {
$form = new FooForm();
if ($request->isMethod('post')) {
$form->bind((array) $request->getParameter('foo'));
if ($form->isValid()) {
$form->save();
$this->redirect('@route_name_for_list');
}
}
$this->form = $form;
}
你说的是管理员生成的模块还是自定义模块?我创建了一个自定义模块。我在提交添加表单后重定向时遇到问题为什么在它前面使用“@”符号?重定向代码说你应该使用url\u作为
格式,但是convertUrlStringToParameter
中的代码似乎表明,如果您不通过查询字符串提供任何参数,@实际上是可选的。它确实是可选的,但更好的做法,并且是一种更好地将实际路由名称与重定向函数参数的其他可能格式区分开来的方法,类似于实际URL或“模块/操作”对。请注意,当您使用URL\u for()时,“@”非常有用。当您使用它时,url_for将期望参数作为查询字符串,而当您不使用时,则期望参数作为关联数组。谢谢,最后一行可执行文件在做什么$这个->表单=$form;它将$form变量传递给视图。