我有一个禁用的选项是页面不可编辑的。 这是我的代码:
<select name="status" class="form-control" id="status" @if($page->editable == 0) disabled @endif>
<option value="1" @if ($page->status == 1) selected @endif>Online</option>
<option value="0" @if ($page->status == 0) selected @endif>Concept</option>
</select>
但是当输入被禁用时,他不发送任何值。 现在出现了问题。 我验证了表格。以下是我验证表单的代码:
$form = $request->validate([
'status' => 'required',
]);
但是我现在得到的错误是值状态为空并且是必需的。 您现在是否如何设置仅需要的验证表单未被禁用?
我希望你能帮助我。
答案 0 :(得分:2)
首先,您应该使用单独的功能进行存储和更新,
对于商店,您的验证代码似乎正确,但您可以添加boolean
规则
$form = $request->validate([
'status' => 'required|boolean',
]);
对于更新,您可以使用这样的验证规则,
$form = $request->validate([
'status' => 'nullable|boolean',
]);
如果您使用相同的功能进行存储和更新,则应发送editable
状态的值,然后您可以根据editable
状态应用验证规则,
if ($request->editable) {
....
}
else {
...
}
我希望这会有所帮助