в меню добавлять ключи
Schema::table('menus', function (Blueprint $table) {
$table->foreignId('article_id')->constrained()->cascadeOnDelete()->cascadeOnUpdate();
$table->foreignId('category_id')->constrained()->cascadeOnDelete()->cascadeOnUpdate();
});
И если не запутался, то связь должна быть меню и статьи (категории) - один ко многим.
Т.е. в модели меню
public function article(){
// Один ко многим
return $this->hasMany(Article::class);
}
а в модели статьи
public function menu(){
// Используем обратное отношение Один ко многим
return $this->belongsTo(Menu::class);
}
Верно, или наоборот?
что такое меню? Ресторан? или что)
нет. В админке делаю раздел меню. В котором создаются пункты меню (главная, контакты, какая-то категория или вообще внешняя ссылка)
попробуй наоборот -🤪 если не получается ))
Изменения не помогли. Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (corporate.menus, CONSTRAINT menus_category_id_foreign FOREIGN KEY (category_id) REFERENCES categories (id) ON DELETE CASCADE ON UPDATE CASCADE) (SQL: insert into menus (name, article_id, type, class, url, category_id, home) values (Статья, 4, page_link, ?, Statya-2, 0, 0))
у тебя ошибку кидает insert.
вот я и не могу понять почему, что сделать чтоб было нормально
Вставлять корректный category_id
Там все корректно .. судя по запросу ..
Нет, там category_id = 0. Сомневаюсь что есть такой id
я сомневаюсь что у него есть cteagory.id = 0
Обсуждают сегодня