如何在laravel中以编辑形式绑定数据库中的单选按钮值?

我为 create create.balde.php和edit.blade.php创建了一个from.blade.php表单。我正在使用该表单来执行这两个操作,但是我在检索数据并将其显示为单选按钮时遇到了问题......知道当我去创建操作时,单选按钮将作为默认值。


这是形式:


<div class="form-group">

    <div class="form-check form-check-radio">

        <label class="form-check-label">

            {{-- {{ ($news->status=="1")? "checked" : "" }} --}}

            <input class="form-check-input" {{ $page->status == '1' ? 'checked' : '' }} type="radio" name="status"

                   id="exampleRadios1" value="0" checked>

            Status is off

            <span class="circle">

                <span class="check"></span>

            </span>

        </label>

    </div>

    <div class="form-check form-check-radio">

        <label class="form-check-label">

            <input class="form-check-input" type="radio" {{ $page->status == '1' ? 'checked' : '' }} name="status"

                   id="exampleRadios2" value="1">

            Status is on

            <span class="circle">

                <span class="check"></span>

            </span>

        </label>

    </div>

</div>

这{{ $page->status == '1' ? 'checked' : '' }}适用于编辑,但是当我转到 create.blade.php 时,出现此错误:


未定义变量:页面(视图:C:\Users\PC\Desktop\khaleej_aden\resources\views\pages\includes\form.blade.php)(视图:C:\Users\PC\Desktop\khaleej_aden\resources\views\页\包括\form.blade.php)



但是如果我删除了这些行,create.blade.php 就 可以完美运行。那么我可以更改什么{{ $page->status == '1' ? 'checked' : '' }}以使其适用于创建和更新?


慕的地8271018
浏览 154回答 2
2回答

慕妹3146593

您也可以在检查状态之前更改代码以检查对象{{&nbsp;(isset($page->status)&nbsp;&&&nbsp;$page->status&nbsp;==&nbsp;'1')&nbsp;?&nbsp;'checked'&nbsp;:&nbsp;''&nbsp;}}

狐的传说

最简单且不那么丑陋的方法是将一个空的 Page 实例从您的控制器传递到页面,如下所示:$page = new Page;return view('create', compact('page'));这样您就可以避免每次要在视图中使用页面变量时进行检查。
打开App,查看更多内容
随时随地看视频慕课网APP