【发布时间】:2014-11-30 08:04:10
【问题描述】:
我有一个 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>
通常我指向 manage-forms 路由,它显示来自数据库的正确数据并且工作正常。
但删除后浏览器显示如下错误,
Undefined variable: form_array (View: F:\xampp\htdocs\laravel2\app\views\manage_forms.blade.php)
它不会重定向到 manage-forms 路由,
请大家帮帮我,
谢谢
【问题讨论】:
标签: php mysql laravel laravel-4 eloquent