在我的blade.php 视图上打印模型内容时,我正在编辑下一个错误:
这就是我尝试在我的视图中使用它的方式:
blade.php
<div class="form-group">
<label for="color">انتخاب رنگ</label>
@if(!$product->colors)
<div id="showColors"> </div>
@else
<div class="row no-gutters mb-1">
<div class="col-md-3">
<label for="color_name" class="ml-1">نام رنگ:</label>
<input type="text" id="color_name" name="color_name[]" class="form-control w-auto d-inline" value="{{ old('color_name') }}">
</div>
<div class="col-md-3">
<label for="color_code" class="ml-1">کد رنگ:</label>
<input type="text" id="color_code" name="color_code[]" class="form-control w-75 d-inline jscolor" value="{{ old('color_code') }}">
</div>
<div class="col-md-1">
<a onclick="addColor()" class="btn btn-info"><i class="fas fa-plus"></i> افزودن</a>
</div>
</div>
@endif
</div>
脚本
<script>
$(document).ready(function() {
showColors();
function showColors() {
let html = '@foreach($product->colors as $color)\n'+
'<div class="row no-gutters mb-1">\n'+
'<div class="col-md-3">\n'+
'<label for="color_name" class="ml-1">نام رنگ:</label>\n'+
'<input type="text" id="color_name" name="color_name[]" class="form-control w-auto d-inline" value="{{ $color->color_name }}">\n'+
'</div>\n'+
'<div class="col-md-3">\n'+
'<label for="color_code" class="ml-1">کد رنگ:</label>\n'+
'<input type="text" id="color_code" name="color_code[]" class="form-control w-75 d-inline jscolor" value="{{ $color->color_code }}">\n'+
'</div>\n'+
'<div class="col-md-1">\n'+
'<a onclick="addColor()" class="btn btn-info"><i class="fas fa-plus"></i></a>\n'+
'<a onclick="deleteColor(this)" class="btn btn-danger"><i class="fas fa-times"></i></a>\n'+
'</div>\n'+
'</div>\n'+
'@endforeach';
$('#showColors').append(html);
}
addColor = function(){
let html = '<div class="row no-gutters mb-1">\n'+
'<div class="col-md-3">\n'+
'<label for="color_name" class="ml-1">نام رنگ:</label>\n'+
'<input type="text" id="color_name" name="color_name[]" class="form-control w-auto d-inline">\n'+
'</div>\n'+
'<div class="col-md-3">\n'+
'<label for="color_code" class="ml-1">کد رنگ:</label>\n'+
'<input type="text" id="color_code" name="color_code[]" class="form-control w-75 d-inline jscolor">\n'+
'</div>\n'+
'<div class="col-md-1">\n'+
'<a onclick="addColor()" class="btn btn-info"><i class="fas fa-plus"></i></a>\n'+
'<a onclick="deleteColor(this)" class="btn btn-danger"><i class="fas fa-times"></i></a>\n'+
'</div>\n'+
'</div>';
$('#showColors').append(html);
// new jscolor($('.jscolor').last()[0]);
};
deleteColor = function(obj) {
$(obj).parent().parent().remove();
};
});
</script>
控制器
public function update(ProductRequest $request,Product $product)
{
$data = [
'title' => $request->title,'latin' => $request->latin,'price' => $request->price,'discount' => $request->discount,'coupon' => $request->coupon,'product_number' => $request->product_number,'order_product' => 0,'status' => $request->has('status'),'special' => $request->has('special'),'publish' => $request->has('publish'),'body' => $request->body,'keywords' => $request->keywords,'descriptions' => $request->descriptions,];
$product->update($data);
$product->categories()->sync($request->category_id);
$colorCodes = $request->color_code;
$colorNames = $request->color_name;
foreach ($colorCodes as $key => $color_code) {
if (!empty($color_code) && !empty($colorNames[$key])) {
$color = new Color;
$color->product_id = $product->id;
$color->color_code = $request->color_code;
$color->color_name = $request->color_name;
$color->save();
}
}
return redirect()->route('products.index');
}
但是当数据内容再提交时出现如下错误提示:
htmlspecialchars() 期望参数 1 是字符串,给定数组
我在编辑页面。当我点击保存。它有错误。
有什么办法可以解决我的问题吗?