[英]Laravel Backpack, Show Address (Json) in Column
設法使用自定義字段。
控制器:
$this->crud->addColumn([
'name' => 'address', //db field
'label' => "Address",
'type' => 'customAddress' //name of custom created custom field
]);
在以下位置創建自定義字段:resources\\views\\vendor\\backpack\\crud\\columns 我將其命名為“customAddress.blade.php”
自定義字段:
{{-- customAddress--}}
<?php $object = (object) json_decode($entry['address'], true); ?>
<span><?php echo $object->value; ?></span>
你也可以用 foreach 來顯示,比如 $object->name、$object->country 等等...
希望這可以幫助某人。
對於從 Backpack 4.0 遷移到 4.1 的每個人,您也應該更新此自定義列。
這是 Backpack v4.1 的更新代碼。 在 v4.1 中,列是否被轉義是有區別的。
我還添加了一個檢查,以防出現 JSON 解析錯誤。
{{-- customAddress--}}
@php
$value = data_get($entry, $column['name']);
$column['escaped'] = $column['escaped'] ?? false;
json_decode($entry['address']);
if(json_last_error() == JSON_ERROR_NONE){
$object = (object) json_decode($entry['address'], true);
$value = $object->value;
} else{
$value = $entry['address'];
}
@endphp
<span>
<span class="d-inline-flex">
@includeWhen(!empty($column['wrapper']), 'crud::columns.inc.wrapper_start')
@if($column['escaped'])
{{ $value }}
@else
{!! $value !!}
@endif
@includeWhen(!empty($column['wrapper']), 'crud::columns.inc.wrapper_end')
</span>
</span>
希望這對從 Backpack 4.0 遷移的人有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.