【发布时间】:2021-07-22 11:06:24
【问题描述】:
我有三张表 - 媒体、城市和流派。它们之间的关系是多对多(多态)。一个城市有许多媒体。一个流派也有许多媒体,反之亦然。
Cities
id, name
Genres
id, name
Medias
id, name
Mediaable
id, mediaable_id, mediaable_type
我想获取所有具有可媒体类型的媒体:
#items: array:3 [▼
0 => App\Models\Media {#1128 ▼
[
"id" => 1,
'name'=>'foo.png',
"types" => ['City', 'Genre']
],
1 => App\Models\Media {#1128 ▼
[
"id" => 1,
'name'=>'foo.png',
"types" => ['City']
],
2 => App\Models\Media {#1128 ▼
[
"id" => 1,
'name'=>'foo.png',
"types" => []
],
];
我该怎么做?
【问题讨论】:
-
你已经尝试了什么?
-
@Elias 我不知道
-
好吧,祝你好运:)
-
这不是一个坏问题,但我需要澄清一个
Media是否可以有多个City和多个Genre? -
好的,所以下一个问题是:a) 你不知道如何从数据库中检索 Media 的关系,b) 是只想将 mediaable_types 作为类型返回而不返回完整关系的问题数据,或者 c) 你不知道怎么做?
标签: php laravel eloquent laravel-8