Как получить последнюю запись таблицы отношений один ко многим в laravel - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть две таблицы с именами Member и Deposit в отношении один ко многим .

Один member имеет несколько сумм экономии в deposit таблице. Таблица deposit для каждой суммы каждого member будет рассчитываться и сохраняться в столбце total_amount в таблице Deposit.

Я должен выполнить поиск Member по branch_id и post-id и отобразить его последний 'total_amount' таблицы 'Deposit'

Как я могу это сделать?

Мой Member Таблица:

id
branch_id
post_id
name
phone
address

Мой депозитный стол:

id
member_id
deposit_date
amount
total_amount

Мой контроллер:

$members = Member::where('branch_id',$request->branch_id)->where('post_id',$request->post_id)->get();

Шаблон лезвия:

@foreach($members as member)
  <td>{{$member->name}}</td>
  <td>{{$member->address}}</td>
  <td>{{$member->deposit->total_amount}}</td> // i want to display here last deposit table total_amount of every member
 @endforeach

Когда я делаю это в блейд-файле Laravel, все реляционные записи таблицы депозитов отображаются в формате JSON.

Как я могу решить это?

1 Ответ

0 голосов
/ 06 ноября 2018

Вы можете использовать withCount() и изменить его:

$members = Member::withCount(['deposits as total_amount' => function($query) {
        $query->select('total_amount')->latest('deposit_date')->limit(1);
    }])
    ->where('branch_id', $request->branch_id)
    ->where('post_id', $request->post_id)
    ->get();

{{ $member->total_amount }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...