(;¬_¬)
суть такова, что это связка одной строки с другой
(;¬_¬)
которая, по идее, работает быстрее чем select * from categories where id = category_id
root
вторичный ключ я понимаю что такое, что мне даёт каскад onDelete ?
root
Я же и без него могу связь создать
(;¬_¬)
можешь, но смотри вот тебе ситуация
(;¬_¬)
вот есть у тебя строка с id 1 и есть другая строка с category_id=1
(;¬_¬)
и если ты надумаешь строку с id=1 удалить
(;¬_¬)
то субд тебя пошлет нахер, потому что нарушится целостность таблицы и строка с category_id=1 будет указывать на несуществующие данные
root
Так... А если сунуть каскад он просто всю связку дропнет ?
(;¬_¬)
а с onDelete('cascade') ты говоришь, что если я дропаю строку с id=1, то все строки с category_id=1 каскадно тоже дропаются
root
(;¬_¬)
да
root
Крутая штука, раньше не приходилось, сейчас посмотрю
(;¬_¬)
возможно кто ведущий а кто ведомый я мог и попутать
(;¬_¬)
но суть такая
(;¬_¬)
еще можно onUpdate что-то делать
(;¬_¬)
но лично я такими штуками не заморачиваюсь
(;¬_¬)
потому что SoftDelete нужнее
root
Спасибо
root
Я тоже в первый раз, просто интересно было
root
надо ж быть в курсе
root
Да и Update удобен
(;¬_¬)
ну понятно, что лучше знать, чем быть в неведении =)
Anonymous
Привет, такой вопрос если у меня записи с опредленными статусами и мне надо сделать такую проверку, что если есть такой то статус в записи то обнови ее, а если такого статуса нет то создай новую запись
Anonymous
как это записать
(;¬_¬)
а ты это как хочешь сделать?
(;¬_¬)
вообще есть updateOrCreate()
Dmitry
или firstOrCreate()
Anonymous
только как условие добавить туда?
(;¬_¬)
DB::table('moderat_statistics')->updateOrInsert(
[
'date' => $date,
'staff_id' => $staff_id,
],
[
'sku_moderations_count' => $sku_moderations_count,
'photo_moderations_count' => $photo_moderations_count
]
);
(;¬_¬)
первый массив - по чему ищем
(;¬_¬)
второй, в какие поля вносим изменения если нашли
(;¬_¬)
ну и собственно, если не нашли, то вот из этих двух массивов будет создано новое
Anonymous
(;¬_¬)
👍
(;¬_¬)
в eloquent по идее тоже такое должно быть, но там уже лучше доку почитать
Алексей
...
Алексей
Сори c консолькой спутал )
Евгений
art make:awesome
Dmitriy
спасибо
в Eloquent FirstOrCreate
Dmitriy
зачем ? мы же его создаем с параметрами типо как updateOrInsert
(;¬_¬)
хм...а у меня вот чот не робит создание через new Item(['param1'=>$val1,'param2'=>$val2]); но я особо не заморачивался пока на эту тему =)
Firdavs
Item::firstOrNew(['param1'=>$val1,'param2'=>$val2])
marabu
(;¬_¬)
Anonymous
Можно ли автоматически при создании новой модели создавать ещё одну зависящую от неё модель? У меня есть User и Profile отношение OneToOne? Знаю, что удаление можно указать триггерами в базе данных в файле миграции
(;¬_¬)
ручками
(;¬_¬)
не?
invariance
это надо код писать...
(;¬_¬)
$user = new User(); $profile = new Profile(); $user->profile($profile)->save();
(;¬_¬)
?
Anonymous
пользователь в нескольких местах может создаваться
marabu
в onCreate?
Anonymous
где этотметод определён?
Dmitriy
Dmitriy
внутри описываешь логику создание
Anonymous
Anonymous
Кроме Elequent всё равно больше не буду ничего использовать
invariance
молодец, хвалю
invariance
ну их со своими доктринами
(;¬_¬)
дык эта, а зачем тебе элоквент тогда?
(;¬_¬)
ты тогда просто mysql_query() херач
(;¬_¬)
а то навыдумывали всякие свои активрекорды
Dmitriy
Я не понял почему не нужен репозиторий про такой то проблеме, ну да ладно...
(;¬_¬)
Anonymous
Я изначально делал с репозиториями всё, потом начались с ними проблемы
Anonymous
Понадобился raw sql
Dmitriy
какие проблемы ? это самый легкий патерн
Anonymous
Всякие сортировки и пагинации
Anonymous
придётся отлавливать событие created
Loot N.
laravel не видит файл .env . кто сталкивался?
Anonymous
Вопрос на засыпку: как отключить обсерверы в тестах?
Алексей
Loot N.
Алексей
Папка не через симлинку?
Loot N.
вроде нет. не я загружал сат
Loot N.
сайт