我有2个课程,Coordinate
和Hunt
class Coordinate extends Model {
public function locatable(){
return $this->morphTo();
}
}
和
class Hunt extends Model {
public function coordinate() {
return $this->morphOne('App\Coordinate', 'locatable');
}
}
然后我使用
创建模型的新实例$cord = new Coordinate;
$hunt = new Hunt;
$hunt->save();
$hunt->coordinate->save($cord);
现在我收听已保存的Hunt
class HuntSaved {
use Dispatchable, InteractsWithSockets, SerializesModels;
public $hunt;
public function __construct(Hunt $hunt) {
dd($hunt->coordinate);
$this->hunt = $hunt;
}
}
奇怪的是dd
在这里返回null
我无法首先保存Coordinate
,因为locatable_type
和locatable_id
在数据库中是not null
。
我的问题是,如何使用原生口才事件处理已保存的事件并获取相关模型。
答案 0 :(得分:0)
在您的关系中,您应首先创建坐标,然后创建寻线。
$coordinate->hunt()->create(array());