170 похожих чатов

Народ, как можно записать несколько строк в таблицу релейшина? объясню на

пальцах:
$product->properties()->updateOrCreate($properties);
где
properties()
- релейшин,
$properties
- массив вида
[ ['id' =>1, 'prop' => 'prop], ['id' => 2, 'prop' => prop2] ]

4 ответов

6 просмотров

Sync не подходит?

"Дедовским" способом - форыч 😅 $props = [ ['id' =>1, 'prop' => 'prop], ['id' => 2, 'prop' => prop2] ]; foreach($props as $prop) { $product->properties()->updateOrCreate($prop); }

Кстати, обрати внимание на механику работы метода create() у моделей: create($first=[], $second=[]) Если ты передашь массив первым параметром, это будет аналог select 1 from table where id1='value1' and id2='value2'... А если тебе надо сравнить именно по идентификатору и если такой записи нет, то остальные данные надо передавать вторым параметром. Вот пример из моего кода: return Car::firstOrCreate(compact('vin'), compact('mark_id', 'model_id', 'modification_id', 'price', 'year')); То бишь, если в таблице нет авто с указанным VIN-номером, тогда создаст запись, иначе вернет модель найденной. С функцией compact() уже знаком? https://laravel.com/docs/5.5/eloquent#other-creation-methods

Слушай, могу ошибаться, но в доке нашел: https://laravel.com/docs/5.5/eloquent-relationships#the-create-method $post = App\Post::find(1); $post->comments()->createMany([ ['message' => 'A new comment.'], ['message' => 'Another new comment.'], ]); Твой случай?

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

Обсуждают сегодня

А чем вам питонисты не угодили?😂
.
79
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
Привет, имею проблему с better-sqlite3 модулем. После npm install я делаю ребилд модуля под свою текущую версию ноды с помощью npx electron-rebuild -f -m node_modules/better-s...
Anton Samofal
1
а чем лучше всего сделать глобальный лок, если много нодов, до сотни? ну то есть мне надо, чтобы некоторые операции с объектом не происходили одновременно. перемещение между н...
Д. П.
15
Я вот так сделал, без base. Шаблон text называется, его контроллер: <?php namespace EvolutionCMS\Main\Controllers; use EvolutionCMS\TemplateController; class TextTemplateCo...
Oleg Nosov
1
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Hi guys, I'm looking for a good LLM course. Is there any course to learn LLMs in advanced? I'm aiming to use them in my apps, so a perfect course in my openion, is not only a ...
Taha
14
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
Карта сайта