sql >> Databáze >  >> NoSQL >> MongoDB

Jak mohu používat Mongoid a ActiveRecord paralelně v Rails 3?

Udělal jsem jen zesměšnění vztahu s metodami v každém modelu AR a modelu Mongoid.

# visit_session.rb
class VisitSession
  include Mongoid::Document
  include Mongoid::Timestamps

  field :user_id, type: Integer
  index({user_id: 1},{name: :user_id_index})

  # Mock a belongs_to relationship with User model
  def user
    User.find(self.user_id)
  end
end

# user.rb
class User < ActiveRecord::Base

  # Mock a has_many relationship with VisitSession Mongoid model
  def visit_sessions
    VisitSession.where(user_id: self.id)
  end
end

Samozřejmě nebudete mít všechny metody AR na modelu VisitSession Mongoid, ale budete si alespoň moci docela dobře zesměšňovat vztah mezi nimi.

Doufám, že to pomůže.



  1. MongoDB:jak porovnat $velikost pole s jinou položkou dokumentu?

  2. MongoDB získá maximální datum uvnitř dvojitě vnořeného pole

  3. Aktualizujte mnoho, pokud existuje , jinak vytvořte pro každé LeadId, který neexistuje, nový dokument

  4. MongoDB najde časové období, pokud se překrývá s jinými daty