1
我希望Form模型绑定多个对象在laracollective的Form包中? 如下所示?对于多个模型的表单模型绑定laravel 5.1
Form::model([$user,$vendors], array('route' => array('user.update', $user->id)))
我在哪里可以申请这个功能吗?
我希望Form模型绑定多个对象在laracollective的Form包中? 如下所示?对于多个模型的表单模型绑定laravel 5.1
Form::model([$user,$vendors], array('route' => array('user.update', $user->id)))
我在哪里可以申请这个功能吗?
我假设你使用的是Laravel-Collective,不幸的是你不能做那样的事情。相反,你可以尝试这样的事:
UPDATE
您可以查询所有的模型在控制器和这样的结合他们:
$user = User::where('id',$user_id)->get();
$vendor = Vendor::where('user_id',$user_id)->get();
//merge two model
$user = $user->merge($vendor);
// return $user;
return view('admin.users.edit', compact('user'))
->withTitle('Edit user');
,并在窗体调用它们像这样:
{!! Form::model($user[1], ['route' => ['admin.users.update', $user],'method'=>'PUT']) !!}
@include('admin.users._formEdit')
<div>
{!! Form::submit('Save user', ['class' => 'btn btn-primary']) !!}
</div>
{!! Form::close() !!}
_formEdit.blade.php
<div class="form-group">
{!! Form::label('first_name', 'First Name : ') !!}
{!! Form::text('user[first_name]', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('last_name', 'Last Name : ') !!}
{!! Form::text('user[last_name]', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group ">
{!! Form::label('email', 'Email : ') !!}
{!! Form::email('user[email]', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group ">
{!! Form::label('password', 'Password') !!}
{!! Form::password('password', ['class' => 'form-control']) !!}
</div>
<div class="form-group ">
{!! Form::label('vendor_name', 'vendor_name') !!}
{!! Form::text('vendor_name', null,['class' => 'form-control']) !!}
</div>
OR的另一个解决方案
用户:
public function vendor(){
return $this->hasOne('App\Vendor','user_id');
}
供应商:
public function user(){
return $this->belongsTo('App\User','user_id);
}
$user = Vendor::with('user')->find($user_id);
{!! Form::model($user, ...) !!} Vendor: {!! Form::text('vendor_name') !!} User: {{ Form::text('user[username]') }} {!! Form::close() !!}
我喜欢你的另一个解决方案,我用第一个方法做了这个ACH。下次我将在适用的情况下使用另一种解决方案。 – karmendra
我只使用这两个模型,我没有尝试过使用3个或更多不同的模型,也许更新解决方案将为此工作。谢谢我很高兴我能帮到你 –