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

Мои две таблицы Member и Deposit там есть отношение один ко многим один участник имеет несколько депозитов в таблице Deposit Я хочу отобразить последнюю запись таблицы депозитов, когда я вызываю всех участников или один участник.

Это моя Member Таблица

1.id,
2.name,
3.phone,
4.account_no,
5.ac_open_date,
6.ac_close_date,
7.status,
8........

Моя Deposit Таблица

1.meber_id,
2.deposit_date,
3.deposit_amount,
4.total_amount,
5..........

Код моего контроллера

$member = Member::with(['Deposit'=>function($query){$query->select('*')->latest('deposit_date')->limit(1);}])->where('status','ready')->get();

если я верну переменную $ member, тогда покажу мои данные аспекта в порядке. но когда я показываю это в моем файле лезвия таким образом ...

секция лезвия

<td>{{ $member->name }}</td>
 <td>{{ $member->account_no }}</td>
 <td>{{ $member->phone }}</td>
<td>{{ $member->deposit->total_amount}}</td>

когда я вызываю модель Deposit, чтобы отобразить deposit таблицу последних записей строки, а затем показать ошибку.

"Свойство [total_amount] не существует в этом экземпляре коллекции. (Представление: C: \ xampp \ htdocs ........

что я могу сделать. Пожалуйста, помогите мне.

Ответы [ 2 ]

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

Я понимаю, что вы обновляете total_amount для каждой транзакции для участника с общим количеством депозитов до сих пор, если да, я предлагаю добавить новый атрибут для таблицы Member и сохранить это значение, чтобы вы могли получить его легко, и вы можете обновить его при необходимости.

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

Попробуйте {{ $member->deposit->first()->total_amount}}.

$member->deposit возвращает коллекцию всех депозитов участника, даже если есть только один.

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