RailsとRubyは初めてです。Rails3.2.11アプリにData-Context-Interaction/akaDCI/パラダイムを実装しようとしています。User
モデルとone-to-many
の関連性のあるモデルがありTopic
ます。にミックスインを書き込もうとしてUser
いますが、機能していません。デバッグのヘルプを提供してください。
私のミキシングは次のようになります:
module Speaker
extend ActiveSupport::Concern
included do
has_many :assigned_topics, class_name: 'Topic', foreign_key: 'speaker_id'
end
def add_topic(topic)
topic.speaker = self
topic.save
end
def remove_topic(topic)
topic.speaker = nil
topic.save
end
end
以下のコードを実行すると、エラーが発生します。
u = User.first
u.extend Speaker
u.assigned_topics
NoMethodError: undefined method `assigned_topics' for #<User:0x00000002f5dca8>