【问题标题】:Can we mix Mongodb dynamic attributes to an ActiveRecord model?我们可以将 Mongodb 动态属性混合到 ActiveRecord 模型中吗?
【发布时间】:2010-11-08 16:24:01
【问题描述】:

我们正在使用类似于这样的动态属性插件: http://codaset.com/joelmoss/dynamic-attributes

这让我们可以在 Rails 模型中存储动态属性。这些动态属性位于单个数据库列中。因此我们面临性能问题,我想知道 MongoId、MongoMapper 或其他 Rails 插件是否允许我们在 ActiveRecord 中保留一些属性(保留< ActiveRecord::Base)但将动态属性存储在 mongodb 中。我们想要这样做是因为我们需要在现有的大部分系统中继续使用 MySQL,但使用 MongoDB 来存储一些模型的动态属性。

基本上这就是我所说的: http://www.railsinside.com/plugins/242-quickly-add-couchdb-to-existing-rails-models-with-stuffing.html

这个插件使用 CouchDB 做同样的事情。

【问题讨论】:

  • 我没有关闭,因为我没有明确的答案。 MongoId 或 MongoMapper 可以开箱即用,还是我们需要自己编程。我还没有机会充分研究 MongoId 和 MongoMapper。如果我这样做,我会自己回答。

标签: ruby-on-rails activerecord mongodb mongoid mongomapper


【解决方案1】:

我看不出 MongoDB 不能处理同样事情的任何原因。

MongoMapper 应该实现 ActiveRecord 模式。但是,Mongo 也有一些简单的 Ruby 驱动程序。总而言之,存储动态属性的概念是 MongoDB 的完美用例。

如果您不介意跳过“ActiveRecord”,您可以使用基本的 Mongo 驱动程序轻松编写自己的代码。

如果您不知道执行此操作的步骤,我建议您 ping 组 (http://groups.google.com/mongodb-user/) 并直接询问 Kyle Banker(他是他们的 ruby​​ 专家)。

【讨论】:

  • 听起来我们需要为 MongoDB 重新实现填充?这是一个合理的答案。我想知道 MongoMapper 或 MongoId 是否支持这种开箱即用的操作模式。
猜你喜欢
  • 1970-01-01
  • 2012-03-13
  • 1970-01-01
  • 2018-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
相关资源
最近更新 更多