所以我想将带有 id 值的下拉菜单中的多个选择存储到数据库中,我得到错误代码无效的文本表示:7 错误:bigint 类型的无效输入语法:“1,2”(SQL:插入“group_customer”(“ group_name", "member_customer", "active", "status", "description", "updated_at", "created_at") 值(group 1, 1,2, yes, ?, ?, 2023-03-10 10:02 :49, 2023-03-10 10:02:49) 返回“id”)
这是我的看法
<div class="row mb-3">
<label for="member_customer" class="col-sm-4 col-form-label">Member</label>
<div class="col-sm-8">
<select id="member_customer" class="form-select show-tick ms" data-placeholder="Select" name="member_customer[]" multiple>
@foreach ($customer as $data)
<option value="{{ $data->id}}">{{ $data->name_customer }}</option>
@endforeach
</select>
</div>
@if ($errors->has('member_customer'))
<span class="text-danger">* {{ $errors->first('member_customer') }}</span>
@endif
</div>
控制器
public function addgroup(Request $request){
$request->validate([
'group_name' => 'required',
'member_customer'=> 'required',
'active' => 'nullable',
'status' => 'nullable',
'description' => 'nullable',
]);
$data = new Group_customer();
$data->group_name = $request->group_name;
$data->member_customer = implode(',',$request->member_customer);
$data->active = $request->active;
$data->status = $request->status;
$data->description = $request->description;
$data->save();
return redirect('admin/groupcustomer')->with('success','Data Added Successfully');
}
模型
class Group_customer extends Model
{
use HasFactory;
public $table='group_customer';
protected $primaryKey = 'id';
protected $fillable = [
'id',
'group_name',
'member_customer',
'active',
'status',
'description',
];
public function Customer()
{
return $this->hasMany(Customer::class, 'member_customer');
}
}
移民
public function up()
{
Schema::create('group_customer', function (Blueprint $table) {
$table->increments('id');
$table->string('group_name');
$table->foreignId('member_customer')->nullable();
$table->foreign('member_customer')->references('id')->on('customer')->onUpdate('cascade')->onDelete('set null')->nullable();
$table->string('active')->nullable();
$table->string('status')->nullable();
$table->string('description')->nullable();
$table->timestamps();
});
}