我有一个laravel Web应用程序,我想从我的formdata表中删除一行,成功删除后,我想显示剩余的表行以及已删除的Flash消息。
请看一下我的代码,
Routes.php
Route::get('manage-forms',array('as'=>'manage_forms','uses'=>'Nri@manage_forms'));
这条路线列出了表行(数据)。
Route::get('delete/{id}',array('as'=>'delete_formdata','uses'=>'Nri@delete_form'));
这条路线是删除现有的一行并将Flash消息发送到上述路线。
控制器==>
public function manage_forms()
{
$form_data=Formdata::all();
return View::make('manage_forms')->with('form_array',$form_data);
}
public function delete_form($id)
{
$deleted=Formdata::find($id);
$deleted->delete();
return View::make('manage_forms')->with('message','the Data is deleted');
}
视图
注册表格详细信息
<h2>Registered Form details</h2>
@if(Session::has('message'))
<p>{{ Session::get('message') }}</p>
@endif
<table border="0">
<tr>
<td>Name</td>
<td>Mobile</td>
</tr>
@foreach($form_array as $form_view)
<tr>
<td>
<input type="hidden" name="id" value="{{$form_view->id}}">
<input type="text" name="name" value="{{$form_view->name}}"/>
</td>
<td>{{$form_view->mobile}}</td>
<td>{{HTML::linkRoute('edit_formdata','Edit',array($form_view->id))}}</td>
<td>{{HTML::linkRoute('view_formdata','View ',array($form_view->id))}}</td>
<td>{{HTML::linkRoute('delete_formdata','Delete ',array($form_view->id))}}</td>
</tr>
@endforeach
</table>
<h2>{{HTML::linkRoute('test_session','Home')}}</h2>
通常我指的是管理表单路由,它显示来自数据库的正确数据并且工作正常。
但删除后,浏览器显示如下错误,
Undefined variable: form_array (View: F:\xampp\htdocs\laravel2\app\views\manage_forms.blade.php)
它不会重定向到管理表单路由,
有人请帮我
谢谢
最佳答案
只需使用Redirect :: to('manage-forms')返回即可解决此问题,