Laravel 如何将外键插入数据库表
我有两个表具有关系,但当我将数据发送到数据库时,我得到了Laravel 如何将外键插入数据库表,laravel,vue.js,Laravel,Vue.js,我有两个表具有关系,但当我将数据发送到数据库时,我得到了NULL,我正在使用Vuejs和Laravel通常在Laravel中,我可以使用foreach循环来实现这一点,但我是Laravel和Vuejs的初学者 我的两个表是学生表和家长表,我在学生表中有一个外键,它引用了家长id 谁能帮我解决这个问题 我的问题是当我发送数据时,student表中的外键被插入为NULL 这是我的学生模型: protected $fillable = [ 'pregistration_id', 'ad
NULL
,我正在使用Vuejs和Laravel通常在Laravel中,我可以使用foreach循环来实现这一点,但我是Laravel和Vuejs的初学者
我的两个表是学生表和家长表,我在学生表中有一个外键,它引用了家长id
谁能帮我解决这个问题
我的问题是当我发送数据时,student表中的外键被插入为NULL
这是我的学生模型:
protected $fillable = [
'pregistration_id',
'admission_no',
'fname',
'mname',
'lname',
'dob',
'gender',
'primary_school',
'form_enrolled',
'transfered_from',
'transfered_to',
];
protected $fillable = [
'fname',
'mname',
'lname',
'residence',
'phone',
'occupation',
];
这是我的父模型:
protected $fillable = [
'pregistration_id',
'admission_no',
'fname',
'mname',
'lname',
'dob',
'gender',
'primary_school',
'form_enrolled',
'transfered_from',
'transfered_to',
];
protected $fillable = [
'fname',
'mname',
'lname',
'residence',
'phone',
'occupation',
];
这是我的学生管理员:
return Student::create([
'pregistration_id'=>$request['pregistration_id'],
'admission_no'=>$request['admission_no'],
'fname'=>$request['fname'],
'mname'=>$request['mname'],
'lname'=>$request['lname'],
'dob'=>$request['dob'],
'gender'=>$request['gender'],
'primary_school'=>$request['primary_school'],
'form_enrolled'=>$request['form_enrolled'],
'transfered_from'=>$request['transfered_from'],
'transfered_to'=>$request['transfered_to'],
// dd($request->all())
]);
这是我的学生桌:
Schema::create('students', function (Blueprint $table) {
$table->bigIncrements('id');
$table->bigInteger('pregistration_id')->unsigned()->nullable();
$table->integer('admission_no')->unique();
$table->string('fname');
$table->string('mname');
$table->string('lname');
$table->date('dob');
$table->string('gender');
$table->string('primary_school');
$table->string('form_enrolled');
$table->string('transfered_from');
$table->string('transfered_to');
$table->foreign('pregistration_id')->references('id')->on('pregistrations');
$table->timestamps();
});
这是Vue中学生组件的一部分:
data() {
return {
editmode: false,
students: {},
form: new Form({
id: '',
admission_no: '',
fname: '',
mname: '',
lname: '',
dob: '',
gender: '',
primary_school: '',
form_enrolled: '',
trasfered_from:'',
trasfered_to: ''
})
}
},
您是否为学生和家长都创建了模型,并在可填充变量中指定了所有表列,例如:
protected$filleble=['id','name','gender']代码>是的,我使用$FILLABLE为学生和家长创建了模型编辑您的问题并发布您尝试过的代码,我们将很容易为您提供帮助。如果您收到的所有值均为空,请检查,因为您使用了$request
,您是否已将传入数据分配给$request
。我的意思是,您是否添加了这一行$request=$request->all()
我添加了这一行$request=$request->all(),但它仍然向数据库发送空数据您是否为学生和家长都创建了一个模型,并在可填充变量中指定了所有表列,例如:受保护的$fillable=['id','name','gender'代码>是的,我使用$FILLABLE为学生和家长创建了模型编辑您的问题并发布您尝试过的代码,我们将很容易为您提供帮助。如果您收到的所有值均为空,请检查,因为您使用了$request
,您是否已将传入数据分配给$request
。我的意思是您添加了这一行$request=$request->all()
我添加了这一行$request=$request->all(),但它仍然向数据库发送空数据