Eloquent ORM多态关系
Eloquent ORM Polymorphic relationship
我正在尝试建立一个基于角色的用户管理,但按多种类型的资源划分。
我有这个关系模型:
我需要在用户配置文件管理视图中显示如下内容:
但我不想进行如下查询:
RoleUser::where('user_id',1)->get();
我想使用多对多多态关系来利用Laravel的Eager/Lazy加载,但我不知道不知道该怎么做。
另一个需要考虑的有趣特性是,我不想在数据库中存储 App\Models\Event
、App\Models\Article
或 App\Models\Photo
等类型,但地图对我来说效果不佳(因为关系设置不正确)。
//AppServiceProvider::boot()
Relation::morphMap([
'event' => Event::class,
'race' => Race::class,
]);
有什么想法吗?
试试这个
//AppServiceProvider::boot()
Relation::morphMap([
'event' => App\Models\Event::class,
'race' => App\Models\Race::class,
]);
我正在尝试建立一个基于角色的用户管理,但按多种类型的资源划分。
我有这个关系模型:
我需要在用户配置文件管理视图中显示如下内容:
但我不想进行如下查询:
RoleUser::where('user_id',1)->get();
我想使用多对多多态关系来利用Laravel的Eager/Lazy加载,但我不知道不知道该怎么做。
另一个需要考虑的有趣特性是,我不想在数据库中存储 App\Models\Event
、App\Models\Article
或 App\Models\Photo
等类型,但地图对我来说效果不佳(因为关系设置不正确)。
//AppServiceProvider::boot()
Relation::morphMap([
'event' => Event::class,
'race' => Race::class,
]);
有什么想法吗?
试试这个
//AppServiceProvider::boot()
Relation::morphMap([
'event' => App\Models\Event::class,
'race' => App\Models\Race::class,
]);