adlandırma dernekler böyle MyModel.first.user.location ile kullanıcı yerini alabilir Bir model isminin tekil formları kafa karıştırıcı olabilir, aynı zamanda yöntem çakışmasıyla sonuçlanabilir. En iyi uygulamalar, genellikle ham SQL sağlamanız gerekmez. Senin davanın bir istisna değil.
Ayrıca MyModel Kullanıcıya ait gibi görünüyor. SQL dayalı aşağıdaki modelleri Assumeing
Gönderildiği: Ve Kullanıcı o zaman böyle bir şey yapabileceği yerler ile birçok ilişki bir tane görünüyor
class User < ActiveRecord::Base
has_many :my_models
has_many :locations
end
class Location <ActiveRecord::Base
belongs_to :my_model
belongs_to :user
end
class MyModel < ActiveRecord::Base
has_many :locations
belongs_to :user
has_one :user_location, through => :user, :source => :location
end
Ancak, bilmiyorum hangi konum Kullanıcının birçok yeri varsa, alacaksınız. Ama en az bir tane varsa, garantili olursun.
Has_many ilişkilendirmeleriniz var, bu nedenle bunu bir tür birleştirme olarak tanımlayabilmeniz gerekir. Ayrıca 100 sonuçların bir listesini hayal edin ve veritabanına sadece 1 talep etmek istiyorsunuz. – xpepermint