在 Laravel 4 中遇到一个问题时,在“联系人”模型编辑表单中,我可以获取所有字段的当前值,除了来自与另一个模型“公司”建立关系的多重选择中的那些。这是一个多对多的关系。我正在获取公司列表,但即使存在关系,也没有选择任何公司。
这是我的编辑表单:
{{ Form::model($contact, array('route' => array('crm.contacts.update', $contact->id), 'id' => 'edit-contact')) }}
<div class="control-group">
{{ Form::label('first_name', 'First Name', array( 'class' => 'control-label' )) }}
{{ Form::text('first_name') }}
</div>
<div class="control-group">
{{ Form::label('last_name', 'Last Name', array( 'class' => 'control-label' )) }}
{{ Form::text('last_name') }}
</div>
<div class="control-group">
{{ Form::label('email', 'Company Email', array( 'class' => 'control-label' )) }}
{{ Form::text('email') }}
</div>
<div class="control-group">
{{ Form::label('company_ids', 'Company', array( 'class' => 'control-label' )) }}
{{ Form::select('company_ids[]', $companies, array('',''), array('multiple'), Input::old('company_ids[]')) }}
</div>
{{ Form::close() }}
我的控制器:
public function edit($id)
{
$contact = Contact::find($id);
$company_options = Company::lists('name', 'id');
return View::make('crm.contacts.edit')
->with('contact', $contact)
->with('companies', $company_options);;
}
关于如何让多选字段预先填充现有值的任何想法?
谢谢