[英]Fetch select option when editing the post
我正在尝试在编辑表单中显示选定的类别,但未显示,
我的观点 :
<select name="category_id" id="category_id" class="form-control{{ $errors->has('category_id') ? ' is-invalid' : '' }}">
{{--<option value="">Choose Category</option>--}}
@foreach($cat as $category)
<option value="{{$category->id}}">{{$category->name}}</option>
@endforeach
</select>
我的PostController
的edit方法:
public function edit($id)
{
$post = Post::findOrFail($id);
$cat = Category::all();
return view('admin.posts.edit',['post'=>$post,'cat'=>$cat]);
}
我试图把这样的if语句:
@foreach($cat as $category)
<option value="{{ $category->id }}" {{$category->id == App\Category::class ? 'selected="selected"' : '' }}>{{ $category->name }}</option>
@endforeach
它显示一个类别,但不是该帖子的选定类别。
救命
根据类别ID检查请求,以及是否选择了相同的回显。
@foreach($cat as $category) <option value="{{$category->id}}" @if(request()->category_id==$category->id) selected @endif>{{$category->name}}</option> @endforeach
只需将其作为定义的选择检索即可:
<select name="category_id" id="category_id" class="form-control{{ $errors->has('category_id') ? ' is-invalid' : '' }}">
<option value="{{ post->category->id }}" name="{{ $post->category->name }}">
@foreach($cat as $category)
<option value="{{$category->id}}">{{$category->name}}</option>
@endforeach
</select>
现在这将是默认选项,并且循环仍将在下拉列表中
$category->id == App\Category::class
您在此处将类别的ID与类别的名称进行比较。
您想做的可能是这样的:
$category->id == $post->category_id
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.