Laravel 5.4中的表单模型绑定问题

时间:2017-07-26 07:17:54

标签: php forms laravel

当我在Laravel中形成模型绑定时通常不会发生这种情况,但出于某种原因,每次我拉出我的绑定表单时,我都会得到完全相同的记录。

{!! Form::model($contact, ['method'=>'PUT', 'route'=>['contact.update', $contact->id]]) !!}
{!! Form::label('firstname', 'First Name:') !!}
{!! Form::text('firstname', null, ['class'=>'form-control']) !!}
{!! Form::label('lastname', 'Last Name:') !!}
{!! Form::text('lastname', null, ['class'=>'form-control']) !!}
{!! Form::label('email', 'Email:') !!}
{!! Form::text('email', null, ['class'=>'form-control']) !!}
{!! Form::label('address', 'Address:') !!}
{!! Form::text('address', null, ['class'=>'form-control']) !!}
{!! Form::label('phone_number', 'Phone:') !!}
{!! Form::text('phone_number', null, ['class'=>'form-control']) !!}
{!! Form::submit('Update Contact', ['class'=>'btn btn-primary']) !!}
{!! Form::button('Close', ['class'=>'btn btn-default', 'data-dismiss'=>'modal']) !!}
{!! Form::close() !!}

控制器:

public function index()
{
    $user = Auth::user();
    $contacts = $user->contacts()->get();
    return view('contacts.index', compact('contacts','user'));
}

单击此按钮时,该窗体将弹出为模式

<button class="btn btn-default editContact" data-toggle="modal" data-target="#editModal">Edit Contact</button>

之前我使用过相同的格式,每次点击都会给我不同的记录。但由于某种原因,我点击的每条记录都会显示更新表单,每次都会记录相同的记录。关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:0)

我想你可以试试这个:

public function index()
{
    $user = Auth::user();
    $contacts = Contacts::where('user_id',$user->id)->first();
    return view('contacts.index', compact('contacts','user'));
}

希望对你有所帮助!!!

答案 1 :(得分:0)

除了已经说过的话,

我的印象是$contact in:

{!!
    Form::model($contact, [
         'method'=>'PUT',
         'route'=>['contact.update', $contact->id]
    ])
!!}

应为$contacts