我只是尝试使用Mongodb和最新的rails设置。
我正在使用Rails 4.0.0.beta 1,Ruby 2.0.0p0和mongoid 4.0.0。
我遇到了问题:我可以按预期创建和删除对象,但无法更新对象。不返回任何错误,开发日志显示正确传递更改的参数。
还有其他人遇到过这个问题吗?
答案 0 :(得分:1)
深入挖掘我看到mongoid 4.0.0仍在引用轻量级1.4.5,官方只支持高达1.9.3的ruby版本。
最新版本的moped on github是2.0.0,它与ruby 2.0.0一起使用,但尚未发布到gem存储库。
看起来我可能需要等待一段时间来尝试这种组合。
答案 1 :(得分:1)
我已经能够执行CRUD操作 - 但是现在我的控制器(仅用于测试/尖峰)我通过strong_parameters允许所有参数。
在我的Gemfile中我得到了:
gem 'mongoid' , git: 'https://github.com/mongoid/mongoid.git'
在控制器中我:
params.require(:foo).permit! # allows everything, and bad security!!!
请参阅此railscast:(http://railscasts.com/episodes/400-what-s-new-in-rails-4) 或代码:(https://github.com/railscasts/400-what-s-new-in-rails-4)
使用strong_parameters查看有关更改的控制器代码,因为我认为这是让您在更新时无声失败的原因:)
在我的一个模型上有一些非常深的has_many:foo,和foo has_many:bar和bar has_many:baz,我对每个都有accept_nested_attributes_for。
所以只是说你可能想要尝试更多一些事情,或者在你尝试的时候和我去过的时候都会对mongoid的下划线进行更新。