我正在使用Laravel 5.6,在我的应用程序中,我在form.blade.php文件中有一个类别创建表单...
@if(isset($image))
<form method="PUT" action="http://localhost:8000/update" enctype="multipart/form-data">
<input type="hidden" name="_method" value="put">
@else
<form method="POST" action="http://localhost:8000/create" accept-charset="UTF-8" enctype="multipart/form-data"><input name="_token" type="hidden" value="1LLYc0D1spmVSFMboLDjGM9MR4O5APVwng7giejx">
{{csrf_field()}}
@endif
<div class="form-group row required">
<label for="description" class="col-form-label col-md-3 col-lg-2">Description</label>
<div class="col-md-8">
<input class="form-control" autofocus placeholder="Description" name="description" type="text" id="description" value="{{$image->categoryname}}">
</div>
</div>
在上述刀片文件中,我同时拥有新类别创建表单和编辑表单。
这是我的CategoryController
public function edit($id)
{
$images = Category::find($id);
return view('categories.form')->withImages($images);
}
我的编辑表单工作正常,但是当我单击新的“类别创建”按钮时,它会产生以下错误
未定义变量:图片(视图:C:\ Users \ Nalaka \ Desktop \ acxian \ resources \ views \ categories \ form.blade.php)
答案 0 :(得分:3)
我不确定我是否在withImage
内看到过此方法Laravel
,建议您尝试使用with
,如下所示:
public function edit($id)
{
$image = Category::find($id);
return view('categories.form')->with(['image' => $image]);
}
如果这不起作用,那么您还需要在if statement
中加入image description
,因为您有{{ $image->categoryname }}
,并且此时还没有检查它的存在>
编辑:要将其包含在if else
语句中,可以对其使用三元运算符,如下所示:
{{ isset($image) ? $image->categoryname : '' }}