Laravel 5.5,Laravelcollective 5.4
在我的编辑页面上,无论数据库中的状态如何,该复选框始终显示为已选中。 (已经确认它没有默认选中的情况下按预期工作。)
我为创建路径使用相同的表单字段,并希望检查默认值。
{{ Form::model($client, ['route' => ['clients.update', $client->id], 'method' => 'patch']) }}
{{ Form::checkbox('active', 'Yes', true) }}
{{ Form::close() }}
答案 0 :(得分:1)
根据documentation on form model binding
所以,优先级如下:
- 会话Flash数据(旧输入)
- 明确传递值
- 模型属性数据
醇>
请注意,显式的Passed Value似乎不是默认的回退,而是提供的实际值(无论模型如何)。因此,这似乎是预期的行为。
更新:正如评论中所讨论的那样,在没有使用模型集的情况下允许回退值的解决方案:
{{ Form::checkbox('active', 'Yes', isset($client)?null:true) }}