我在 Rails 3.0.20 中使用 mysql2 适配器。 我的列名称为“城市”,“城市”的数据类型为“字符串”。 “:患者详细信息、:城市、:字符串、:null => true” 我没有在“城市”文本字段中输入任何数据并保存。 在数据库中,它显示为空字符串“”而不是 NULL。 为什么要这样存储? 如何将其存储为 NULL 字符?
最佳答案
在将模型保存到数据库之前,您需要添加一些代码(如下所示)。 Rails从前端接收数据时,可能无法区分空数据或null数据。
patient_details.city = nil if patient_details.city == ''
顺便说一句,除非确实非常必要,否则我不会在数据库列中使用可为空的数据。
关于mysql - 字符在数据库中未存储为 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22265666/