Как я могу получить почту тега с красноречивым ORM

StackOverflow https://stackoverflow.com//questions/21011438

  •  21-12-2019
  •  | 
  •  

Вопрос

У меня есть надлежащая ORM Post и теги таблицы.Теги, назначаемые для публикации на таблице поворота.Чтобы получить сообщения-> Теги в Laravel, я использую ниже модели модели.

//Model: Post
public function tags()
{
$this->belongsToMany('Tag', 'post_tag', 'post_id', 'tag_id');
}
.

Вот моя база данных:

post
  id

tags
  id

post_tag
  post_id
  tag_id
.

Вопрос

Я хочу получить все сообщения, имеющие впечатляющее имя тега.

Что я попробовал

Генеракодицетагкод с нетерпением загрузки.Но дал ошибку целостности.

Также я пробовал отношение запроса, бросить ошибку не объектной.

Post::whereHas('tags', function($q)
{
    $q->where('id', '=', $tag_id);

})->get();
.

Это было полезно?

Решение

Отношения являются двунаправленными

Вам нужно определить тег модели как

class Tag{
    public function posts()
    {
         return $this->belongsToMany('Post');
    }
}
.

Вы могли бы сделать

$posts = Tag::find(44)->posts;
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top