Laravel 模型在没有主键的情况下保存数据
我有2个模型:个人资料和学生。配置文件包含主键 id。学生模型没有任何主键,但有一个外键,profile_id,它链接到 profile.id。我的学生控制器中有一个函数,该功能在调用时激活学生,将状态从0设置为1。我正在尝试使用save()来更新值,但无法做到这一点,提示我一条消息如下:
Column not found: 1054 Unknown column 'id' in 'where clause'
能不能请指教?谢谢。
学生模式:
class Student extends Eloquent {
protected $primary_key = null;
public $incrementing = false;
protected $fillable = array('username', 'password', 'status', 'profile_id');
public function profile() {
return $this->belongsTo('Profile');
}
}
型材型号:
class Profile extends Eloquent {
protected $fillable = array('firstname', 'lastname', 'email', 'phone');
public function student()
{
return $this->hasOne('Student', 'profile_id', 'id');
}
}
学生主讲员:
public function activate($id) {
$student = Student::where('profile_id', '=', $id)->first();
$student->status = 1;
$student->save();
return Redirect::to('students');
}