У меня есть две модели, Expense
и Tag
, которые имеют отношение ко многим.
Для каждого Расхода я могу добавить несколько тегов, которые хранятся в сводной таблице с помощью sync
. Таблица называется expense_tag
.
Теперь на моей странице expenses.show
, я хочу показать подробности об одном расходе, очевидно. Но я хочу показать ВСЕ связанные расходы, используя отношение тегов.
Проблема:
У меня есть информация только на один счет. Это означает, что мне нужно собрать все теги, которые назначены на эти расходы, а затем, используя эти теги, взять все расходы, которые были назначены одному или нескольким из этих тегов.
Я хочу воздержаться от необходимости использовать циклы foreach для достижения этой цели. Я пытался с фильтром, но я не уверен, как это сделать. Я просто предпочитаю, чтобы все было просто.
Есть предложения по этому поводу?
Мои отношения в моей модели:
Расход:
public function tags()
{
return $this->belongsToMany(Tag::class);
}
Метка:
public function expenses()
{
return $this->belongsToMany(Expense::class);
}