我想知道是否有其他人遇到过我见过的类似问题-这就是发生的事情;
我有一个使用 MongoDB 和 Mongoid 的 Rails 3.2.14 应用程序我有一个名为 Selectfield 的模型(如表单中的选择标记),其属性名为 option_values,它是一个哈希:
class Selectfield < Inputfield
#inherits name and label from Inputfield
field :option_values, type: Hash # key/vals for <option> in <select>
end
长话短说,当我保存一个新的 Selectfield 时,有时我会收到与 option_values 哈希相关的错误,随后看起来好像所有其他记录都已丢失。转到 inputfields 控制器,即使我知道我保存了 10 多条记录,它也不会显示任何记录。在我修复表单中的错误后,这将持续存在。
奇怪的是,一旦我创建了一个没有错误的新输入字段,所有以前消失的记录都会出现。我认为这可能与哈希格式中的错误有关,可能是引号放错了。也许格式不正确的哈希导致了错误,而新记录会以某种方式解决它?
虽然在短期内我已经能够解决这个问题,但我最担心的是破坏 MongoDB 以使其看起来所有记录都已丢失是多么容易。有没有人看到这个问题?我只使用 MongoDB 一个星期,所以我想知道这是否是其他人看到的问题。我用谷歌搜索了这种类型的错误,没有看到任何有类似问题的人。
我还要告诉 Mongoid 还是 MongoDB?还是我们将其归结为用户错误?