在 laravel-blade 中有条件地设置输入值的更好方法

Better way to conditionally set input value in laravel-blade

我正在使用这个逻辑在 laravel-blade 输入表单中保留值,这个工作正常但是我很好奇是否有更好的方法来实现相同的?

 @if(old('name'))
    <input type="text" id="name" name="name" class="form-control" value="{{ old('name') }}">
 @else
    <input type="text" id="name" name="name" class="form-control" 
           value="{{ isset($category) ? $category->name : '' }}">
 @endif

您可以将第二个参数传递给 old,它将用作默认值,因此您可以使用如下代码:

<input type="text" id="name" name="name" class="form-control" value="{{ old('name', isset($category) ? $category->name : '') }}">

还是有点难看,但比 if 好多了。

试试这个

<input type="text" id="name" name="name" class="form-control" value="{{ old('name', isset($category) ? $category->name : '') }}">