在 laravel 刀片中显示 JSON 数组
Posted
技术标签:
【中文标题】在 laravel 刀片中显示 JSON 数组【英文标题】:Display JSON Array in laravel blade 【发布时间】:2021-02-14 22:17:31 【问题描述】:我需要在输入框中单独显示列extras_name
内的 JSON 数据,并在编辑时填充值
这是刀片文件代码
<div class="card">
<h5 class="card-header">
Manage Extras
</h5>
<div class="card-body">
$customProduct
<br><br><br>
<div class="optionBox">
<div class="block main">
<div class="form-row pb-2">
<div class="col">
<input type="text" class="form-control" name="extras_name[]" value=" $customProduct->name " placeholder="Name">
</div>
<div class="col">
<input type="text" class="form-control" name="extras_price[]" placeholder="Price">
</div>
<div class="col">
<button type="button" class="remove btn btn-danger"><i class="fas fa-trash-alt"></i></button>
</div>
</div>
<div class="block mt-2 ">
<button type="button" class="add btn btn-success">Add Extras</i></button>
</div>
</div>
</div>
</div>
</div>
这是控制器编辑功能
public function edit($venue, CustomProduct $customProduct)
$data = [
'customProduct'=>$customProduct,
];
return view('manage.custom-products.edit')->with($data);
以下是数据在数据库中的保存方式
【问题讨论】:
【参考方案1】:首先json_decode
这个
然后在foreach
你可以使用它。
刀片文件:
@if(!empty(json_decode($data->extras_name))) --JUST FOR CHEKING THAT IF THIS WAS NOT JSON OR THIS WAS NULL, THE ERROR NOT SHOWING--
@foreach(json_decode($data->extras_name as $title=>$value))
<label>
$title ?? '' : $value ?? ''
</label>
<br/>
@endforeach
@endif
【讨论】:
【参考方案2】:这样做没有意义 相反,您可以在输入下方的列表项上显示您的值,并在添加或删除新值时使用 ajax 刷新列表
【讨论】:
以上是关于在 laravel 刀片中显示 JSON 数组的主要内容,如果未能解决你的问题,请参考以下文章
如何在 laravel 刀片视图中打破 foreach 循环?
使用 Javascript 在 Laravel 刀片视图中显示数组中的动态数据时出现问题
Laravel 8:在刀片视图上过滤/显示数据,数组保存在数据库中