【发布时间】:2013-03-11 08:56:39
【问题描述】:
我有两个模型 - Question & Tag。
两者之间都有 HABTM 关联。还有一个questions_tags 连接表。
如果我有问题 (q),只需执行 q.tags 即可找到标签。
但是,如果我有标签 (t),当我尝试走另一条路 (t.questions) 时,我会收到如下错误:
NoMethodError: undefined method `questions' for #<ActiveRecord::Relation:0x007fda147522b8>
HABTM 不应该双向工作吗?在我的情况下,如何获取与标签关联的 questions?
【问题讨论】:
-
你能在你使用
t.questions的地方显示你的代码吗?我怀疑 t 不是标签,而是错误提示的 AR::Relation。类似t = Tag.where(id: some_id)(忘记添加.first)会导致错误 -
啊……你是对的。它返回一个数组......不是单个对象。如果您将其添加为答案,我会接受。
-
完成。谢谢,祝你好运!
标签: ruby-on-rails ruby-on-rails-3 has-and-belongs-to-many