Laravel 5.3-此表单的控制器存储方法

Laravel 5.3-此表单的控制器存储方法,laravel,laravel-5.3,Laravel,Laravel 5.3,我有一个4个模型 用户-带默认字段的基本Laravel用户 游览-带有字段['id'、'user\U id'、'name'、'start\U time'、'end\U time'] 总线-带字段['id'、'Tourition\u id'、'staff\u id'、'staff\u qnty'、'staff\u price'] 职员-带字段['id','name'] 这就是关系 User hasMany Excursion Excursion belongsTo User Excursion

我有一个4个模型

用户-带默认字段的基本Laravel用户

游览-带有字段['id'、'user\U id'、'name'、'start\U time'、'end\U time']

总线-带字段['id'、'Tourition\u id'、'staff\u id'、'staff\u qnty'、'staff\u price']

职员-带字段['id','name']

这就是关系

User hasMany Excursion
Excursion belongsTo User

Excursion hasMany Bus
Bus belongsTo Excursion

Bus hasMany Staff
Staff hasMany Bus
我还有一张供公共汽车司机使用的透视表 这是用户的表单:

当用户提交表单时,这是dd$请求

政府应该怎样做MyController@store方法看起来像。。。 有没有办法用associate或其他方法保存此数据?请帮助。

您可以尝试:

$excursion_input = ['name' => $request->get('name'), 'start_time' => $request->get('start'), 'end_time' => $request->get('end')];

$excursion = auth()->user()->excursion()->create($excursion_input);

for ($i=0; $i < count($request->get('stuff_id')); $i++)
{
    $input = [
        'staff_id' => $request->get('stuff_id')[$i],
        'staff_qnty' => $request->get('qnty')[$i],
        'staff_price' => $request->get('price')[$i],
    ];
    $bus = $excursion->bus()->create($input);
}

在您的输入中,没有员工姓名。我已将其修复…现在有一些东西可能会起作用,但代码太多…必须有一种方法使用associate方法和sync来完成。拉威尔之路!!!您的输入数据格式不正确,因此我们必须将for循环和associate用于belongsTo关系,而sync用于belongstomy。在这里,我们没有使用它们来创建模型。