如何使用请求全部存储会话 ID



我正在尝试将传递的course_id以 DRY 格式保存到课程形式中。

我尝试单独保存每个变量并且它有效,但是当我尝试 DRY 代码时,它不起作用。这是我尝试过的代码。

public function store(StoreLessonsRequest $request)
{
    if (! Gate::allows('lesson_create')) {
        return abort(401);
    }
    $request = $this->saveFiles($request);
    $lesson = Lesson::create($request->all() +
    $lesson->course_id = session()->get('id') +
        + ['position' => Lesson::where('course_id', $request->course_id)->max('position') + 1]);

    foreach ($request->input('lesson_materials_id', []) as $index => $id) {
        $model          = config('medialibrary.media_model');
        $file           = $model::find($id);
        $file->model_id = $lesson->id;
        $file->save();
    }

    return redirect()->route('admin.exams.create', ['course_id' => $request->course_id]);
}

我希望course_id保存,但给了我一个不支持的操作数类型的错误。

这是我最终解决它的方式。首先,我声明了变量,然后传递了它。

   public function store(StoreLessonsRequest $request)
    {
        if (! Gate::allows('lesson_create')) {
            return abort(401);
        }
        $request = $this->saveFiles($request);
        $seesion = session()->get('id');
        $lesson = Lesson::create($request->all()
            + ['position' => Lesson::where('course_id', $request->course_id)->max('position') + 1] + ['course_id' => $seesion] );

        foreach ($request->input('lesson_materials_id', []) as $index => $id) {
            $model          = config('medialibrary.media_model');
            $file           = $model::find($id);
            $file->model_id = $lesson->id;
            $file->save();
        }

最新更新