Я использую рельсы 3 и начал свое приложение с ActiveRecord. Теперь у меня есть много моделей, и отношения начинают усложняться, и некоторые из них могут быть проще выражены с помощью Document-Oriented структуры, поэтому я хотел бы попробовать перейти на MongoDB и использовать Mongoid.
Я всегда слышал, что вам не нужно было использовать все MongoDB или ничего, но вы могли бы использовать два параллельно во время миграции. Я не понимаю, как это сделать из документации.
Например, у меня есть:
class User < ActiveRecord::Base
has_many :items
has_many :products, :through => :items
end
class Product < ActiveRecord::Base
has_many :items
end
class Item < ActiveRecord::Base
belongs_to :user
belongs_to :product
# alot of data that fits a hierarchical document-oriented structure
end
В идеале я хотел бы начать с замены моей модели активной записи Item на документ Mongoid, чтобы мои элементы сохранялись в MongoDB, а мои Users
и Products
могли оставаться в моей базе данных SQL
Дело в том, что я не понимаю, как это сделать. Я иду об этом правильным путем?
Возможно, другой альтернативой является сохранение базового предмета AR
class Item < ActiveRecord::Base
has_one :mongodb_item ?? # I know this is wrong
end
class MongodbItem
include Mongoid::Document
belongs_to AR_Item ??? # I know this is also wrong
end
Спасибо!