Laravel 表单显示正确的数据但在数据库中存储不正确的值

我在我的网站上遇到了一个错误,我对如何修复它感到困惑.. 基本上我有一个创建课程的视图,我输入一个课程标题,然后为该课程分配一个讲师,然后单击保存。但是当我回到我的索引页面时......我分配的导师完全不同。看来我的选择肯定有问题,但我不确定如何修复它。我是 laravel 的新手,因此非常感谢任何帮助。

我添加了一张图片以尝试进一步解释我的问题,在这里我选择了一位讲师-

http://img4.mukewang.com/635b312300016f4e05290390.jpg

当我返回我的索引页面时,新创建的课程“测试”分配了管理员用户......我很困惑 -

http://img1.mukewang.com/635b312c000173a105210513.jpg

创建.blade.php


@extends('layouts.app')


@section('content')

    <div class="row justify-content-center">

        <div class="col-md-8">

            <div class="card">

                <div class="card-header">Create Course</div>

                <div class="card-body">


                        <form method="POST" action="{{ route('admin.courses.store') }}" enctype="multipart/form-data">

                            @csrf


                            <div class="form-group">

                                    <label class="required" for="name">Course Title</label>

                                    <input class="form-control" type="text" name="title" id="id" value="{{ old('title', '') }}" required>

                                    @if($errors->has('name'))

                                    <div class="invalid-feedback">

                                        {{ $errors->first('name') }}

                                    </div>

                                @endif

                            </div>



                            <div class="form-group {{ $errors->has('instructors') ? 'has-error' : '' }}">

                                <label class="required" for="name">Instructors</label>

                                    <select class="form-control select2" name="instructors[]" id="instructors" multiple>

                                        @foreach($instructors as $id => $instructors)

                                            <option value="{{ $id }}" {{ in_array($id, old('instructors', [])) ? 'selected' : '' }}>{{ $instructors }}</option>

                                        @endforeach

                                    </select>

                            </div>

                    </form>

                </div>

            </div>

            @endsection


收到一只叮咚
浏览 180回答 1
1回答

阿晨1998

您正在更新数据而key不是id尝试这个在控制器中&nbsp;$instructors = User::whereHas('role', function ($query) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $query->where('role_id', 2); })->select('id','name')->get();&nbsp;在刀片您将需要instructors->id更新正确的值@foreach($instructors as $id => $instructor)<option value="{{ $instructor->id }}" {{ in_array($id, old('instructors', [])) ? 'selected' : '' }}>{{ $instructor->name }}</option>@endforeach
打开App,查看更多内容
随时随地看视频慕课网APP