Покажите многим многим в Show Blade

У меня есть таблица members, Interests и Interest_members, в которой один участник может иметь несколько интересов, а один интерес может быть общим для нескольких участников. При тестировании таблица Interest_members обновляется на 100%.

В таблице Interest_members есть следующие столбцы:

  1. я бы
  2. интерес_id -> внешний ключ
  3. member_id -> внешний ключ

Моя проблема в том, что я не знаю, какой синтаксис использовать для отображения интересов каждого члена в колонке шоу? Нужна помощь с полем Интерес в блоке кода ниже.

show.blade.php:

<h1>Member Details: </h1>
<p>Name: {{$member->name}}</p>
<p>Surname: {{$member->surname}}</p>
<p>ID Nr: {{$member->id_number}}</p>
<p>Language: {{$member->language->name}}</p> 
<p>Interest: {{??????}}</p>
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
913
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Убедитесь, что у вас налажены отношения:

class Member extends Model {
    public function interests() {
        return $this->hasMany(Interest::class);
    }
}

class Interest extends Model {
    public function members() {
        return $this->belongsToMany(Member::class);
    }
}

На ваш взгляд, это будет означать, что вы можете (пример):

<p>Interests:</p>
<ul>
    @foreach($member->interests as $interest)
        <li>{{ $interest->name }}</li>
    @endforeach
</ul>

Это объясняет, как работают отношения "многие ко многим": https://laravel.com/docs/5.6/eloquent-relationships#many-to-many

вы можете определять отношения в моделях «Интерес» и «Участник» на основе документация.

после определения отношений вы можете получить интересы Участников с помощью $yourMember->interests()

class MeemberInterest extends Model {
    public function interest() {
        return $this->hasMany('App\Interest');
    }
    public function member() {
        return $this->hasMany('App\Member');
    }
}

class Member extends Model {
    public function interests() {
        return $this->hasMany('App\MemberInterest')->with('interest');
    }
}

class Interest extends Model {
    public function members() {
        return $this->belongsToMany(Member::class);
    }
}

Хорошо, кто-нибудь скажет мне, как работало принятое решение? Его, таблица интересов и таблица участников не связаны напрямую, но связаны через третью таблицу member_interest. Итак, как работает принятый ответ?

priosshrsth 07.06.2018 23:24

Другие вопросы по теме