Ich bin mir nicht sicher, ob ich richtig die Schienen eifrig Laden verwende.rails4 eifrig laden über 2 Modelle
Ich möchte post.user.profile.first_name
in der Ansicht anrufen, die einfach post.user.name
dank Delegierung sein wird. Ich möchte es mit einer Abfrage machen, also sollte Profil zusammen mit Benutzer bei der ersten Abfrage geladen werden. Ich bin mir nicht sicher, ob ich es gut mache.
Ist das der richtige Weg?
profile.rb
belongs_to :user
user.rb
has_one :profile
delegate :first_name, .... , to: :profile, allow_nil: true
has_many :posts
post.rb
belongs_to :user
has_one :user_profile, through: :user, source: :profile
posts_controller
Post.includes(:user, :user_profile).paginate.......
Probieren Sie es aus und sehen. Die Protokolldatei teilt Ihnen mit, welche Abfragen ausgeführt werden. – Eric