Mongodb / рельсовая модель организации - PullRequest
0 голосов
/ 31 декабря 2011

Перенос моего приложения на NoSQL (MongoDB использует Mongoid в моем случае). До миграции мои пользовательские модели выглядели так:

class User < ActiveRecord::Base
  has_one :profile, class_name: 'UserProfile', dependent: destroy
end

class UserProfile < ActiveRecord::Base
  belongs_to :user
  belongs_to :country
  belongs_to :region
  belongs_to :locality
end

class Country < ActiveRecord::Base
  has_many :regions, dependent: destroy
  has_many :localities, dependent: destroy
  has_many :user_profiles
end

class Region < ActiveRecord::Base
  belongs_to :country

  has_many :localities, dependent: destroy
  has_many :user_profiles
end

class Locality < ActiveRecord::Base
  belongs_to :country
  belongs_to :region

  has_many :user_profiles
end

Итак, я разделил таблицы «пользователи», «user_profiles», «страны», «регионы», «местности». У меня нет большого опыта работы с Mongo, но, как я знаю, запросов на объединение нет, поэтому я не уверен, что моя текущая структура вписывается в парадигму NoSQL. Не вызовет ли это много дополнительных запросов?

...