繁体   English   中英

编辑帖子时获取选择选项

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM