У меня есть администратор Laravel 5.2 Backpacker для моего нового проекта, и мне нужно внести незначительные изменения в сгенерированный вид списка. То есть:
У меня есть сумма, хранящаяся в базе данных в виде центов, но она должна отображаться как обычная сумма, поэтому для этого потребуется разделить все значения на amount
колонка на 100;
У меня есть определенные строки, которые имеют cancelled
дата в них. Я хотел бы установить класс строки «предупреждение» для них.
Пока нашел только этот полное решение по переопределению, но было интересно, можно ли сделать это проще в контроллере crud.
Я уже могу изменить заголовок с этим:
$this->crud->setColumnDetails('amount', ['label' => 'Total Amount']);
Есть ли такая простая опция для строк данных? Подобно:
$this->crud->setColumnData('amount', $this->crud->amount/100);
1) Я бы рекомендовал использовать аксессуар, сказать:
public function getAmountInDollarsAttribute($value)
{
return ($this->amount)/100;
}
Тогда вы сможете добавить столбец для этого атрибута «amountInDollars».
2) Простой способ добиться чего-то подобного — это создать пользовательский столбец. Внутри вы сможете отобразить ярлык предупреждения / успеха, который выделит этот ряд. Что-то вроде:
<td>
@if ($entry->cancelled_date)
<span class="label label-danger">Cancelled</span>
@else
<span class="label label-default">Not cancelled</span>
@endif
</td>
Надеюсь, поможет. Ура!
Других решений пока нет …