我在rails 3.0.20中使用mysql2适配器。 我有一个列名为'city'& 'city'的数据类型是'string'。 “:patient_details,:city,:string,:null => true” 我没有在“城市”文本字段中输入任何数据并保存。 在数据库中,它显示为空字符串“”而不是NULL。 为什么这样存储? 如何将其存储为NULL字符?
答案 0 :(得分:1)
在将模型保存到数据库之前,需要添加一些代码(如下所示)。当rails从前端接收数据时,它可能无法区分空数据或空数据。
patient_details.city = nil if patient_details.city == ''
顺便说一句,我不会将可空数据用于数据库列,除非它确实是非常必要的。