Size: a a a

2020 April 11

D

Dymon in Laravel Pro
Vip Sklad
На счёт валидации, я ещё до не не до шёл. Это не оконченная работа. А как должны выглядит данные с фронта- оптимально?
так же как у тебя в контролере после foreach ` [
           '20' => [
               'price'=>1
               .....
           ]
       ]`. Что у тебя на фронте - форма или js?
источник

VS

Vip Sklad in Laravel Pro
Dymon
так же как у тебя в контролере после foreach ` [
           '20' => [
               'price'=>1
               .....
           ]
       ]`. Что у тебя на фронте - форма или js?
Форма.  неймиг расчитан  на массив
источник

D

Dymon in Laravel Pro
Vip Sklad
Форма.  неймиг расчитан  на массив
так сразу айдишники товаров и добавь как индекс в этот массив
источник

VS

Vip Sklad in Laravel Pro
Dymon
так сразу айдишники товаров и добавь как индекс в этот массив
Хммм!!! Интересная идея надо ее переварить. Спасибо!
источник

VS

Vip Sklad in Laravel Pro
Yuriy Shmidt
+ транзакции
Точно!
источник

VS

Vip Sklad in Laravel Pro
Ostap 🇺🇦
в Request классе можно переформировать данн_е, prepareForValidation(), или как там...
Действительно. Спасибо!
источник

VS

Vip Sklad in Laravel Pro
kaktus778
1. Валидация входящих данных
2. Создай сервис в который будет отправлять данные из контроллера и который будет создавать что нужно
3. Создавай не через insert/create а создавай модели через new... иначе ты себя лишаешь возможности слушать события обсервером..
4. ну и конечно phpDoc используй)) а то синие свойства почеркнутые  в тех же реквестах смотрятся некрасиво)
Насчёт 3 пункта создавать через new не совсем понял. Можно пример?
источник

k

kaktus778 in Laravel Pro
Vip Sklad
Насчёт 3 пункта создавать через new не совсем понял. Можно пример?
new Model
источник

k

kaktus778 in Laravel Pro
Но и без этого если что работает обсервер.. но я всегда создаю так, потому что подсказка по свойствам вылазит..
источник

YS

Yuriy Shmidt in Laravel Pro
я не думаю что там уместен обсервер
источник

k

kaktus778 in Laravel Pro
Yuriy Shmidt
я не думаю что там уместен обсервер
я активно его юзаю всегда))
источник

VS

Vip Sklad in Laravel Pro
kaktus778
new Model
Вы это имели ввиду:
$order= new Order();
$order—>create($request->input());
???
источник

YS

Yuriy Shmidt in Laravel Pro
ну или
public function store(Order $order) {}
источник

N

Name in Laravel Pro
Vip Sklad
Вы это имели ввиду:
$order= new Order();
$order—>create($request->input());
???
Там скорее всего имели :
$task = new Task;
   $task->name = $request->name;
   $task->save();

https://laravel.com/docs/5.1/quickstart#creating-the-task
источник

O

Ostap 🇺🇦 in Laravel Pro
Кто-то будет на Pioneer Hackathon ?)
источник

k

kaktus778 in Laravel Pro
Name
Там скорее всего имели :
$task = new Task;
   $task->name = $request->name;
   $task->save();

https://laravel.com/docs/5.1/quickstart#creating-the-task
так точно
источник

YS

Yuriy Shmidt in Laravel Pro
kaktus778
я активно его юзаю всегда))
Если запись в несколько таблиц нужна транзакция. На одной модели сработает обсервер на другой нет при условии что после первой записи в таблицу словим исключение.
Я предпочитаю ручную транзакцию, и евентом после коммита.
источник

RK

Roman Kolosov in Laravel Pro
Vip Sklad
вот мое рабочее решение
весь код можно уместить в пару строк
public function store(StoreCartRequest $request)
{
 $cart = Cart::create($request->validated());

 return CartResource::make($cart);
}
источник

k

kaktus778 in Laravel Pro
Yuriy Shmidt
Если запись в несколько таблиц нужна транзакция. На одной модели сработает обсервер на другой нет при условии что после первой записи в таблицу словим исключение.
Я предпочитаю ручную транзакцию, и евентом после коммита.
ну в таких случаях да.. явные евенты правильнее))
источник

YS

Yuriy Shmidt in Laravel Pro
kaktus778
ну в таких случаях да.. явные евенты правильнее))
ну у него ведь там 2 таблицы, значит транзакция, а раз так ... ))
источник