Извините за мой английский.Получите сумму счета в методе класса
Я хочу сделать запись, которая будет выводить мне сумму всех моих заказов, т. Е. Сложенную последовательность заказов и сгруппированных по заказам.
Я создал модель «Продажа», который содержит метод AmountOrder
public function AmountOrder()
{
$AmountOrder = DB::table('goods')
->join('sale_lines', 'sale_lines.good_id', '=', 'goods.id')
->where('sale_id', $this->id)
->select(DB::raw('SUM(price*quantity) as total_sales'))
->value('total_sales');
return $AmountOrder;
}
и выводить код, как этот
@foreach ($sales as $sale)
<tr>
<td class="table-text"><div>{{ $sale->id }}</div></td>
<td>
{{ $sale->client->name }}
</td>
<td>
{{$sale->date}}
</td>
<td>
{{$sale->AmountOrder($sale)}}
</td>
<td>
{{$sale->debt($sale)}}
</td>
<td>
{{$sale->date_of_issue}}
</td>
</tr>
@endforeach
Но проблема заключается в том, что запрос выполняется на каждой строке , Я новичок в Laravel, но подумал, что вы можете решить эту проблему как-нибудь красивее?
спасибо, что заблаговременно!
Ваш метод не имеет параметр так '$ продажи-> AmountOrder ($ продажа)' должен быть '$ продажи-> AmountOrder()' – RiggsFolly
Вы дали правильная связь между вашими продажами и хорошим? –
Вы говорите, что я прописал миграционную руду в своей модели? – Grozwalker