@laravel_pro

Страница 2002 из 2014
Aleks
25.10.2018
06:18:30
Rubrics::where('id', $request->id)->fill($data)->description()->create($data);
тут тебе логичней firstOrNew использовать.

потом fill и save

Oleg ?
25.10.2018
06:18:44
$model = Rubrics::where('id', $request->id)->first(); $model->fill($data); $model->save();

BadMethodCallException Call to undefined method Illuminate\Database\Eloquent\Builder::fill()

Google
Oleg ?
25.10.2018
06:19:14
а точно филл?

а то чет говорит метода нет )

Даниил
25.10.2018
06:19:50
Oleg ?
25.10.2018
06:20:06
да я уже читаю да

странно

а че оно тогда : - |

Aleks
25.10.2018
06:20:20
$model = Rubrics::firstOrNew('id', $request->id); $model->fill($data); $model->save(); Вот так попробуй

или там массив в параметре? не помню. Возможно вот должно быть $model = Rubrics::firstOrNew(['id' => $request->id]);

Oleg ?
25.10.2018
06:21:54
я опять метод перепутал xD

Даниил
25.10.2018
06:22:22
Rubrics::findOrNew($request->id)

Google
Oleg ?
25.10.2018
06:23:16
$model = Rubrics::where('id', $request->id)->first(); $model->fill($data); $model->save(); $model->description()->create($data);

ну вместо одно строки такое вышло

некрасиво, но сойдет

Aleks
25.10.2018
06:23:27
Rubrics::findOrNew($request->id)
научи вот так форматировать, плз )

Даниил
25.10.2018
06:23:46
Aleks
25.10.2018
06:23:52
ага

Даниил
25.10.2018
06:24:04
три ` в начале и три в конце блока нужного :)

Aleks
25.10.2018
06:24:33
$model->save();

спс

Oleg ?
25.10.2018
06:30:14
когда именно поис

к

Даниил
25.10.2018
06:30:38
ну или find :)

Oleg ?
25.10.2018
06:30:42
я просто Rubrics::find($request->id); обычно юзаю

ну вот да, ок

просто мб смысл какой есть

Даниил
25.10.2018
06:31:51
не, я просто за код Алекса зацепился, вот и все если тебе только апдейт - то просто find()

Oleg ?
25.10.2018
06:32:24
ага, ня

Aleks
25.10.2018
06:33:50
я просто Rubrics::find($request->id); обычно юзаю
я просто всегда думал если find ничего не находит, то null возвращает, а findOrNew если не нашел то вызывает конструктор

разве не так? если он null вернет, то fill ошибку выдаст

Google
Даниил
25.10.2018
06:35:13
Если ты findOrNew делаешь, то если записи не было, то при save он ее создаст Учитывая, что кейс тут именно обновление - такого поведения не нужно

Можно делать findOrFail, тогда сразу ModelNotFoundException бросится, если записи нет

Aleks
25.10.2018
06:35:58
кейс был про создание и апдейт )

у меня на создание метод просто валидацию делает и отдаёт, хотел реюзать как есть для апдейта, данные одинаковые выходит

Илья
25.10.2018
06:36:00
в таком случае лучше findOrFail

Oleg ?
25.10.2018
06:36:52
сейчас попробую

ну да

но у меня валидатор стоит на id

я чет не подумал, что его подделать могут

if($model = Rubrics::find($request->id)) { $model->fill($data); $model->save(); $model->description()->create($data); }

завернул так

если ниче не происходит просто редирект назад делает

ситуация когда id не тот может быть только при подтасовке данных в этом случае

Aleks
25.10.2018
06:38:06
if($model = Rubrics::find($request->id)) { $model->fill($data); $model->save(); $model->description()->create($data); }
а создание у тебя все таки не тут просиходит? )

Oleg ?
25.10.2018
06:38:07
так что норм

Oleg ?
25.10.2018
06:38:43
а создание у тебя все таки не тут просиходит? )
нет, а предлагаешь и апдейт и креат делать одним методм через Find or New?

Aleks
25.10.2018
06:38:45
самого значения в случае создания

Oleg ?
25.10.2018
06:38:47
хм

Google
Oleg ?
25.10.2018
06:39:06
я чет никогда даже не задумывался

и как блин этот метод обозвать +_+

Aleks
25.10.2018
06:40:05
save )

Oleg ?
25.10.2018
06:40:14
сойдёт

❤️

Илья
25.10.2018
06:41:14
ну такое

Aleks
25.10.2018
06:41:18
если вдруг надо будет проверить - создание идет обновление можно между до save() проверить $model->id если там пусто - значит создаешь

Илья
25.10.2018
06:41:57
обновление - это обновление создание - это создание зачем перемешивать?

Oleg ?
25.10.2018
06:42:19
обновление - это обновление создание - это создание зачем перемешивать?
ну я тоже единство отвественности стараюсь поддерживать

Aleks
25.10.2018
06:42:36
обновление - это обновление создание - это создание зачем перемешивать?
дело то хозяйское, если платят за количество строк то можно и на каждое событие методы делать

Oleg ?
25.10.2018
06:43:17
Платят к сожалению за готовый функционал ))

Илья
25.10.2018
06:43:41
дело то хозяйское, если платят за количество строк то можно и на каждое событие методы делать
что уж там, можно и в роутинге логику писать, если так мыслить строк меньше, огонь же

Даниил
25.10.2018
06:44:12
обновление - это обновление создание - это создание зачем перемешивать?
тут соглашусь, лучше разделять к тому же, если нет валидации по существованию id(а ее в таком слукчае и не будет, видимо), то в апдейт можно передать что угодно и он это создаст

Oleg ?
25.10.2018
06:44:56
когда филлаблы указаны и обращение идёт к модели и связанной модели

умозрительно просто не оч понимаю

Илья
25.10.2018
06:46:08
если сущности с указанным айди нет, ты должен отдать 404

Даниил
25.10.2018
06:46:48
Смотри, у тебя в базе есть записи с id 1-15 ты заходишь в условную форму редактирования записи с id 5 меняешь в html значение поля id на 400 и делаешь апдейт ты ожидаешь, что при таком коде не обновится ничего, так как записи с id 400 в базе нет, а по факту он ее тебе создаст

потому что в апдейте ты используешь метод findOrNew

Google
Даниил
25.10.2018
06:48:50
если есть желание сократить код - можно часть с заполнением модели и ее сохранением сделать отдельным методом приватным, на вход подавать твою модель

но тут особого смысла нет

Artem
25.10.2018
06:55:46
Nik
25.10.2018
06:56:18
Эт временно
Ну да, ну да. Лет на 7, пока проект не умрет

Евгений
25.10.2018
06:57:43
Подскажите, может кто нибудь юзал какой-то пакет для реализации атрибутов у товаров? Цвета, размеры, мощности и вот это вот всё... И объединение атрибутов в группы атрибутов. И назначение групп атрибутов разным категориям товаров)) Или лучше самому запилить?

как ведёт себя EAV на товарах от 500к и 10к атрибутов, интересно

Евгений
25.10.2018
07:02:35
какая примерно схема таблицы была? Как решать когда у атрибутов разные еденицы измерения, которые надо выводить на фронте, и при этом адаптировать под Мега, Кило и тд?

Aleks
25.10.2018
07:02:59
едИницы )

Евгений
25.10.2018
07:03:20
да пофик)

и еще если для разных атрибутов нужны разные типы (селект, чекбокс, радио, текст...)

Oleg ?
25.10.2018
07:04:13
звучит как задача для json

Евгений
25.10.2018
07:05:10
такая простая мне не подойдет :( Ладно, покопаю пока готовые решения, изучу подходы и буду свой придумывать)

Oleg ?
25.10.2018
07:05:35
Евгений
25.10.2018
07:06:12
мне кажется потом фильтровать по json когда много товаров будет не оптимально совсем. Может ошибаюсь. Изучу и такой подход тоже

Oleg ?
25.10.2018
07:06:53
ну тогда если только релейшеншипами

Страница 2002 из 2014