Laravel: HasManyThrough Polymorphi c Проблема - PullRequest
0 голосов
/ 14 апреля 2020

Предположим, у меня есть следующие таблицы:

users
- id
- name
- email
- password
posts
- id
- title
- content
- user_id
pages
- id
- title
- content
- user_id
commentables
- id 
- body
- user_id
- commentable_id
- commentable_type (post or photo)

Затем я создаю модели для каждой из них: Пользователь, Сообщение, Страница, Комментируемый

// User 
  public function commentables() {
     return $this->hasMany("App\Commentable");
  }

  public function comments_on_posts() {
     // code to get the comments on user's post ?? <- Problem 1
  }

  public function comments_on_pages() { 
     // code to get the comments on user's pages ?? <- Problem 2
  }

Мне нужно собрать / собрать все комментарии для постов или страниц определенного пользователя (hasManyThrough).

  1. Задача 1 : собрать все комментарии к сообщениям определенного пользователя.
  2. Задача 2 : собрать все комментарии для комментариев определенного пользователя.
...