我有会员和SkyMedRep型号:Laravel外键关系 - 在字段列表未知列
class SkyMedRep extends Model
{
protected $fillable = [
'id','rep_id',
];
public function members()
{
return $this->hasMany('App\Member');
}
}
class Member extends User
{
public function sky_med_rep()
{
return $this->belongsTo('App\SkyMedRep');
}
}
这是会员迁移:
public function up()
{
Schema::create('members', function (Blueprint $table) {
$table->increments('id');
$table->integer('sky_med_rep_id')->unsigned();
$table->timestamps();
});
Schema::table('members', function($table) {
$table->foreign('sky_med_rep_id')->references('id')- >on('sky_med_reps')->nullable(true);
});
}
会员模型包含外键引用SkyMedRep model.After定义这种关系,我试图将SkyMedRep模型的对象分配给会员模型的对象,如:
$member->sky_med_rep = $sky_med_rep;
在这里,$ member是会员模型的对象,$ sky_med_rep是SkyMedRep模型的对象。
当我尝试$ member-> save()时,出现错误“字段列表中的未知列'sky_med_rep'”。看来sky_med_rep不能被当作外键引用。下面是我的代码来保存数据:
$member = new Member();
$member->sky_med_member_number = $request->input("sky_med_member")['member_number'];
$sky_med_rep = SkyMedRep::firstOrNew(['rep_id' => $request->input("sky_med_member")['rep_id']]);
$sky_med_rep->name = $request->input("sky_med_member")['name'];
$sky_med_rep->save();
$member->sky_med_rep = $sky_med_rep;
$member->save();
你能告诉我你什么时候得到错误吗?也告诉我你的查询? – Qazi
$ member = new Member(); $ member-> sky_med_member_number = $ request-> input(“sky_med_member”)['member_number']; $ sky_med_rep = SkyMedRep :: firstOrNew(['rep_id'=> $ request-> input(“sky_med_member”)['rep_id']]); $ sky_med_rep-> name = $ request-> input(“sky_med_member”)['name']; $ sky_med_rep-> save(); $ member-> sky_med_rep = $ sky_med_rep; $ member-> save(); 保存成员对象时出现错误。我已经通过SkyMedRep对象分配了$ member-> sky_med_rep。但在保存期间,我收到错误未知字段列表 –
请[编辑]您的问题以包含附加信息。 –