Таблица пользователей
|---------------------|------------------|
| id | email |
|---------------------|------------------|
| 3 | 18 |
|---------------------|------------------|
Почтовый стол
|---------------------|------------------|
| id | Title |
|---------------------|------------------|
| 12 | My Post |
|---------------------|------------------|
Таблица категорий
|---------------------|------------------|
| id | Title |
|---------------------|------------------|
| 18 | My Category |
|---------------------|------------------|
Категория-сообщение
|---------------------|------------------|
| post_id | category_id |
|---------------------|------------------|
| 12 | 18 |
|---------------------|------------------|
Пользователь Категория
|---------------------|------------------|
| user_id | category_id |
|---------------------|------------------|
| 3 | 18 |
|---------------------|------------------|
В этой структуре таблицы я хочу получить все сообщения с любым заданным идентификатором пользователя в соответствии с их любимой категорией одним запросом.
Я определил отношения для всех моделей
Категория:
public function posts(){
$this->belongsToMany(Post::class,'category-post','category_id','post_id')
}
Сообщение:
public function categories(){
$this->belongsToMany(Category::class,'category-post','post_id','category_id')
}
Пользователь:
public function favCategories(){
$this->belongsToMany(Category::class,'user-category-','user_id','category_id')
}