Size: a a a

Laravel для начинающих

2020 January 23

Д

Діма in Laravel для начинающих
Хорошо.
Переделаю чтобы не запутаться
источник

И

Игорь in Laravel для начинающих
О чем и сказали https://t.me/laravel_web/174441
источник

AH

Andrey Helldar in Laravel для начинающих
Діма
Если бы нейминг не был правильно настроил то ничего бы не работало и так
У тебя в базе поле tags есть?
источник

Д

Діма in Laravel для начинающих
Есть
источник

Д

Діма in Laravel для начинающих
Пока разбираюсь с другой стороны
источник

Д

Діма in Laravel для начинающих
я добавляю теги так
$post->tags()->attach($r->tags);
источник

Д

Діма in Laravel для начинающих
Сейчас столкнулся с проблеммой

когда посылаю в $request->tags
массив с одним элементом,
А перед этим было 3 элемента
источник

Д

Діма in Laravel для начинающих
То тег просто делает attach() и дописывается один элемент
но 3 остаются которые были.
Может знаешь как их отвязывать?
источник

AH

Andrey Helldar in Laravel для начинающих
Діма
Есть
Тогда переименовывай релейшен. Имена не должны совпадать.
источник

Д

Діма in Laravel для начинающих
Andrey Helldar
Тогда переименовывай релейшен. Имена не должны совпадать.
Имена какие Не должны совпатать?
Имя модели и имя метода?
источник

Д

Діма in Laravel для начинающих
или что?
источник

Д

Діма in Laravel для начинающих
есть модель Post
если я хочу сделать рилейшн где угодно я пишу

public function post()
$this->belongsToMany(Post::class())
источник

К

Канат in Laravel для начинающих
Діма
Имена какие Не должны совпатать?
Имя модели и имя метода?
В своей модели блог переименуй релейшн tags
источник

Д

Діма in Laravel для начинающих
источник

Д

Діма in Laravel для начинающих
у меня разве не так
источник

Д

Діма in Laravel для начинающих
это модель блог
источник

ML

Mehrob Latipov in Laravel для начинающих
Ты когда делаешь $blog->tags у тебя поле из бд вытаскивается
источник

ML

Mehrob Latipov in Laravel для начинающих
а не релейшн
источник

ML

Mehrob Latipov in Laravel для начинающих
поменяй названия хотяб чтоли... или вообще убери это поле из бд
источник

AH

Andrey Helldar in Laravel для начинающих
Діма
у меня разве не так
У тебя в базе данных есть колонка tags и релейшен ты tags называешь.
Так нельзя.

Суть релейшена в том, что при обращении к $post->tags она загружает данные из базы 1 раз и хранит в модели. То есть, при последующих запросах берется готовый результат и никто не лазит в базу.
Но ты переопеределил этот функционал колонкой tags из базы...
источник