Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Re: Laravel 5.x » Как настроить грамотный вывод последнего сообщения? » 02.04.2018 07:26:18

Вы пытаетесь вывести последнее сообщение, но оно выводит данные в зависимости от последнего сообщения... Вроде все правильно работает?
Меня смущает строка v-bind:friend"{$message_user}". Если я все правильно понимаю, vue ждет в этом месте название переменной, которая в нем определена, а здесь передается значение из php

#3 Re: Laravel 5.x » Как правильно хранить данные при модели но не для таблицы » 01.04.2018 07:32:58

В конечном итоге это информация о заказе? Так может и хранить в таблице с заказами?
Для себя я сделал вывод, что если случается подобный затык, значит надо пересмотреть логику процесса

#4 Re: Laravel 5.x » Eloquent ORM, хочу грамотно запросить данные » 31.03.2018 11:17:20

Нашёл решение. Просто дорабатываю массив ручками, используя foeach.

//форматируем массив
        foreach ($orders as $order){
            foreach ($order->items as $item){
                $item->name=$item->template->name;
                $item->count=$item->pivot->items_count;
                unset($item->template);
                unset($item->pivot);
            }
        }

А данные из Pivot получил, прописав withPivot('items_count') при объявлении отношения в модели заказов.

#5 Re: Laravel 5.x » Корзина на Laravel: сохранение данных с корзины в базу данных? » 30.03.2018 14:16:28

Есть метод store у корзины. Он сохраняет все товары в БД, оставляя всю механику за кадром. Всё же в документации есть

#6 Re: Laravel 5.x » Корзина на Laravel: сохранение данных с корзины в базу данных? » 30.03.2018 14:03:27

С библиотекой не знаком, могу лишь сказать, что надо организовать связь один-ко-многим для сохранения заказов и товаров из корзины

#7 Laravel 5.x » Eloquent ORM, хочу грамотно запросить данные » 29.03.2018 19:22:39

Smartel
Ответов: 1

Laravel 5.6.
Есть четыре таблицы: Templates, Items, Orders и Item_order.

Templates и Items связывает отношение один-ко-многим (элементы items наследуют шаблоны templates).
Orders и Items - многие-ко-многим.

Поля в таблицах (id не стал писать):
Templates { name };
Items { template_id, size, price };
Orders { status };
Item_order { order_id, item_id, items_count };

Задача вывести JSON-массив всех заказов вида:

[
{ "status" : 0,
   "items" : [
       {"name":"Пицца foo", "size":"30см", "price":200, "count":2},
       {"name":"Ролл bar", "size":"100гр", "price":300, "count":1}
    ]
},
{ "status" : 1,
   "items" : [
       {"name":"Пицца foo", "size":"40см", "price":300, "count":3}
    ]
}
]

Сейчас я это делаю строкой
\App\Order::with('items.template')->get();
но получаю вложения .."items": [{... , "template":{....}}, {... , "template":{....}},]
и не знаю, как вставить поле "count" из pivot-таблицы.

Использовать большой конструктор запросов?
Помогите, пожалуйста

Подвал раздела