我有两个模型,分别是申请和实习。
这些关系是:
Internship.php
public function applications() {
return $this->morphMany('App\Application', 'applicationable');
}
Application.php
public function applicationable() {
return $this->morphTo();
}
此查询不起作用...
$i = Internship::find(144)
$i->applications // this does not work
但是,这确实...
Application::where('applicationable_id', 144)->get() // this works
我对自己做错了事感到困惑,对此的任何帮助都会有所帮助。
请注意:该项目是Laravel 5.6,我还有其他正在运行的多态关系,只有这个有问题。
Eloquent为$internship->applications
呈现的原始命令是:-
select * from `applications` where `applications`.`applicationable_id` = ? and `applications`.`applicationable_id` is not null and `applications`.`applicationable_type` = ?
答案 0 :(得分:0)
请确保您在实习表中的ID号为144,否则它将为您抛出一个错误,说:“试图获取非对象的属性'照片'”