我需要对我的数据应用查询过滤器,以将一个表的外键与另一个表的主键相匹配,我现在想通过控制器执行此操作。文档是主表/模型。关键字是另一个模型,但也是Document的子表。寻找有关此语法的建议。
一个例子:
@keywords = Keyword.where(keywordable_id == @document.id)
keywordable_id是Document model / table中的外键。
答案 0 :(得分:0)
来自
@keywords = Keyword.where(keywordable_id == @document.id)
到
@keywords = Keyword.where(keywordable_id: @document.id)
另一方面,我建议你设置关联
class Document < ActiveRecord::Base
has_many :keywords, foreign_key: 'keywordable_id'
end
class Keyword < ActiveRecord::Base
belongs_to :document, primary_key: 'keywordable_id'
end
查询@keywords = @document.keywords