Laravel 5.4:使用雄辩且可填充的字段用多个表更新多个模型
我有两种型号Laravel 5.4:使用雄辩且可填充的字段用多个表更新多个模型,laravel,eloquent,laravel-5.4,Laravel,Eloquent,Laravel 5.4,我有两种型号Driver和DriverCar 我需要按模型显示字段值,让我向您显示我的表单标题代码 请注意,Driver与DriverCar通过Driver\u id {!! Form::model($driver, [ 'route'=>['drivers.update', $driver], 'method'=>'PATCH', 'class'=>'form-horizontal'
Driver
和DriverCar
我需要按模型显示字段值,让我向您显示我的表单标题代码
请注意,Driver
与DriverCar
通过Driver\u id
{!! Form::model($driver, [
'route'=>['drivers.update', $driver],
'method'=>'PATCH',
'class'=>'form-horizontal'
]) !!}
现在在我的表单字段中
<div class="form-group">
{!! Form::label('name', trans('interface.DriverName'), ['class'=>'col-sm-2 control-label']) !!}
<div class="col-sm-10">
{!! Form::text('name', null, ['class'=>'form-control', 'placeholder'=>trans('interface.DriverName')]) !!}
</div>
</div>
有没有什么方法可以让它可填充
而不给它这样的关系$driver->driverCar->car\u model
秒
这是我的控制器,我试图同时更新这两个表
public function update( Request $request, Driver $driver, DriverCar $driverCar ) {
//dd( $driverCar );
$input = $request->all();
$driver->fill( $input )->save();
$driverCar->fill( $input )->save();
return redirect()->route( 'drivers.edit', $driver );
}
在控制器中,我也不能更新这两个表,它只更新驱动程序
,但不触摸驱动程序卡
请提供任何指导。您没有将
driverCar
ID传递给update
控制器方法,因此请将代码更改为类似以下内容:
public function update( Request $request, Driver $driver)
{
$input = $request->all();
$driver->fill($input)->save();
$driver->driverCar()->first()->fill($input)->save();
return redirect()->route('drivers.edit', $driver);
}
驾驶员和驾驶员之间的一对一关系?是的,它是一对一关系是的,谢谢这解决了控制器问题,它以任何方式使表单字段中的
可填充
发生了吗?不使用像这样的值$driver->driverCar->car\u model
谢谢
public function update( Request $request, Driver $driver)
{
$input = $request->all();
$driver->fill($input)->save();
$driver->driverCar()->first()->fill($input)->save();
return redirect()->route('drivers.edit', $driver);
}