Laravel красноречиво суммирует несколько строк из связанной таблицы ⇐ Php
-
Гость
Laravel красноречиво суммирует несколько строк из связанной таблицы
У меня есть таблица Quotes, которая имеет отношение «один ко многим» с таблицей QuoteDetails.
Структура таблицы выглядит следующим образом:
return $this->quotes->with('quotedetails') ->orderBy('created_at', 'DESC')->paginate(10); Результаты:
{ «текущая_страница»:1, "данные":[ { «идентификатор»: 2, "subject":"демо", "цитатаподробности":[ { «идентификатор»: 2, "quotes_id":2, "description":"данные тестирования", «всего»: 1080 }, { "идентификатор":3, "quotes_id":2, "description":"тестирование", «всего»: 180 } ] }, { «идентификатор»: 1, "subject":"демо", "цитатаподробности":[ { «идентификатор»: 1, "quotes_id":1, "description":"данные", «всего»: 360 } ] } ], «на_страницу»: 10, «prev_page_url»: ноль, «к»: 2, "всего":2 } Я хочу включить сумму quotedetails.total, а не полный список строк QuoteDetails. Я не уверен, как это следует сделать.
Вот как я делаю запрос в своей модели (Цитаты)
публичная функция quotedetails(){ return $this->hasMany('App\Models\QuotesDetail', 'quotes_id', 'id'); } Как мне получить итого сумму.
Вот какой я ожидаю результат
{ «текущая_страница»:1, "данные":[ { «идентификатор»: 2, "subject":"данные ссылки на демо", "котировка": 1260 }, { «идентификатор»: 1, "subject":"демо", "сумма котировки": 360 } ], «на_страницу»: 10, «prev_page_url»: ноль, «к»: 2, "всего":2 }
У меня есть таблица Quotes, которая имеет отношение «один ко многим» с таблицей QuoteDetails.
Структура таблицы выглядит следующим образом:
return $this->quotes->with('quotedetails') ->orderBy('created_at', 'DESC')->paginate(10); Результаты:
{ «текущая_страница»:1, "данные":[ { «идентификатор»: 2, "subject":"демо", "цитатаподробности":[ { «идентификатор»: 2, "quotes_id":2, "description":"данные тестирования", «всего»: 1080 }, { "идентификатор":3, "quotes_id":2, "description":"тестирование", «всего»: 180 } ] }, { «идентификатор»: 1, "subject":"демо", "цитатаподробности":[ { «идентификатор»: 1, "quotes_id":1, "description":"данные", «всего»: 360 } ] } ], «на_страницу»: 10, «prev_page_url»: ноль, «к»: 2, "всего":2 } Я хочу включить сумму quotedetails.total, а не полный список строк QuoteDetails. Я не уверен, как это следует сделать.
Вот как я делаю запрос в своей модели (Цитаты)
публичная функция quotedetails(){ return $this->hasMany('App\Models\QuotesDetail', 'quotes_id', 'id'); } Как мне получить итого сумму.
Вот какой я ожидаю результат
{ «текущая_страница»:1, "данные":[ { «идентификатор»: 2, "subject":"данные ссылки на демо", "котировка": 1260 }, { «идентификатор»: 1, "subject":"демо", "сумма котировки": 360 } ], «на_страницу»: 10, «prev_page_url»: ноль, «к»: 2, "всего":2 }
Мобильная версия