すべてのユーザーを保持するために使用されるユーザー モデルがあります。私のアプリにはメンターと学生の 2 種類のユーザーがいますが、構造は同じです。
私はこのようなことをしたいです。
has_many :requests, :foreign_key => mentor? ? 'mentor_id' : 'student_id', :class_name => 'Request'
私はメンターを持っていますか?モデルのメソッドですが、method_missing エラーが発生します。メソッドを探しているからだと思いますdynamic_matchers.rb
これはそれが与えるエラーです
/var/lib/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/dynamic_matchers.rb:55:in 'method_missing': undefined method 'mentor?' for #<Class:0x00000001b40630> (NoMethodError)
Student と Mentor 用に別々のモデルを作成せずにこれを行う方法はありますか? 両者が同じフィールドを使用しているのを見る必要はないと思います。