Laravel CRUD:如何将输入字段更新为null?

时间:2018-03-29 16:41:41

标签: forms laravel input laravel-5.6

这是CRUD'edit'页面的输入字段。在页面加载时,它会从数据库填充一些值。

<input type="text" name="lives" value="{{ old('lives', $card->lives) }}">

当我清除此输入字段(删除旧的或检索到的字符串)并提交表单时,$request->('lives')中仍有旧数据!

我已经有了一个解决方案:如果我从输入字段中删除旧值并输入单个空格 - 它可以正常工作,$request->('lives')包含null(感谢TrimStrings和{{1中间件)。

但是当我只是清空输入字段并提交表单时,我希望它能正常工作。

有什么建议吗?谢谢。

P.S。 ConvertEmptyStringsToNull字段没有问题,因为它们没有属性“value”,旧数据会粘贴在标记之间。

<textarea>

1 个答案:

答案 0 :(得分:0)

只需在控制器操作方法中添加一个条件

$data = $request->all();

$data['lives'] = 
    (isset($data['lives']) && !empty($data['lives'])) ? $data['lives'] : NULL;