matiss
matiss

Reputation: 747

Rails 5: query has_many / belongs_to namespaced models

I have has_many / belongs_to relationship:

models/media/media.rb

module Media
  class Media < ApplicationRecord
  has_many :positions, dependent: :destroy, inverse_of: :media, class_name: 'Position::Position'
end

In Media::Media I have column name

models/position/position.rb

module Position
  class Position < ApplicationRecord
  belongs_to :media, optional: true, inverse_of: :position, class_name: 'Media::Media', foreign_key: 'media_id'
end

In Position::Position I have column media_id.

I'm a bit stuck with relatively simple thing: how to show Media name for each position? Thank you for any help! I'm on Rails 5 and Postgresql 9.5.

Update

In console I try this: Position::Position.joins(:media).where(media_id: :id).select(:name) however I get this error: (Object doesn't support #inspect)

Upvotes: 0

Views: 221

Answers (1)

Joel Blum
Joel Blum

Reputation: 7888

Try reversing the join maybe - Media::Media.joins(:positions)

Upvotes: 1

Related Questions