kentuck1213
@kentuck1213

Как правильно реализовать подвязку БД?

Есть таблица work и work_type. У work (работа) может быть несколько work_type (типы работ), подвязка называется один ко многим .
table:
work work_type
id id
work_type_id name
name_work

Контроллер :
public function index(WorkType $wk)
    {
        $works = $wk->has();
        dd($works);
    }

Work Model:
class WorkType extends Model
{
    protected $table = 'work_type';

    public function has()
    {
        return $this->hasMany('App\Work')->get();
    }
}

все две таблицы заполнены по две записи
но в браузере показывает
<?php
Collection {#304 ▼
#items: []
}
?>
Почему ? что я не так делаю ?
P.S методы и переменные не логично заданы , я знаю.
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 1
AmdY
@AmdY
PHP и прочие вебштучки
В описании нужно просто $this->hasMany('App\Work'), без вызова ->get();
Если вы затем обращаетесь к связи как к метода (со скобками) ->has() - возвращется квери билдер и вы можете задать дополнительные параметры вроде where - orderBy. Чтобы получить данные, нужно обращаться к связи как к аттрибуту
$works = $wt->has;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы