0
我有兩個型號有belongs_to的命名範圍在Ruby中加入on Rails的4
class Faq < ActiveRecord::Base
belongs_to :faq_type
end
和
class FaqType < ActiveRecord::Base
has_many :faqs
end
我想打一個學生的範圍,只有用FaqType獲取常見問題解答「學生」
我試過的
class Faq < ActiveRecord::Base
belongs_to :faq_type
scope :student, -> { joins(:faq_type).where('faq_type.name = ?', 'Student') }
end
許多變化名稱
這似乎沒有工作。
一般的錯誤信息是一樣的東西..
PG::UndefinedTable: ERROR: missing FROM-clause entry for table "faq_type"
SELECT "faqs".* FROM "faqs" INNER JOIN "faq_types" ON "faq_types"."id" = "faqs"."faq_type_id" WHERE (faq_type.name = 'Student')
誰能解釋這是怎麼回事就在這裏,閱讀文檔http://api.rubyonrails.org/classes/ActiveRecord/Scoping/Named/ClassMethods.html#method-i-scope似乎在暗示這是正確的做法。
謝謝!