Laravel从数据库中删除行并列出剩余的行

时间:2014-11-30 08:04:10

标签: php mysql laravel laravel-4 eloquent

我有一个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消息。

Controller ==>

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)

它不会重定向到 manage-forms 路由

任何人请帮助我,

由于

1 个答案:

答案 0 :(得分:0)

只需使用返回Redirect :: to('manage-forms')来解决此问题,