php - 如何通过 laravel 在 JSON 数据库字段中存储具有 NULL 值的键?
问题描述
想象一下:
<input name="bank[account]">
<input name="bank[name]">
<input name="bank[status]">
所有这些字段都以 JSON 格式存储在数据库中的列中。
我使用 Laravel$casts
将这个字段作为数组引入:
protected $casts = [
'bank' => 'array',
]
现在问题已全部解决,当用户没有填写其中一些内容时,数据库中没有存储任何内容,当我尝试向用户显示存储的值时出现bank[]
错误。nullable
Undefined index
我需要像这样在数据库中存储Empty
或NULL
输入字段"Key":NULL
。在这种情况下,它应该是这样的:
{"name":NULL,"account":NULL,"status":NULL}
我使用Laravel 5.7和表单请求验证来处理我的表单。
解决方案
解决方案:
只需使用此中间件
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
注意:这个中间件是默认的 laravel 中间件之一。你不需要做任何事情来使用它。我不知道为什么它一开始不起作用,但过了一段时间却没有改变任何东西!
推荐阅读
- c# - 即使服务器关闭,Identity Server 4 客户端也能正常工作
- solr - 将单个 solr facet 字段分组到范围或存储桶中
- c++ - 想要检查模板化参数是否为 std::endl
- angular - 如何等待一个可观察的循环
- python - 无服务器和 python:未将包添加到 zip 以进行部署
- spring - 如何使用 Spring Boot 自动释放 8080 端口
- java - 如何在 Java 中生成唯一的 Long
- python - 如何在 Python 中创建一个简单的输入数学验证码?
- anylogic - 一旦代理通过任何块,如何将单个代理编号传输到变量?
- r - 为什么在 ArcGIS 和 R 中 Eckert IV 投影的处理方式不同?