【问题标题】:Rails: access associations within a modelRails:访问模型内​​的关联
【发布时间】:2015-07-30 16:05:04
【问题描述】:

要访问模型中的模型属性,您可以调用self[:attribute_name],例如如果你有一个 :question 属性,那么你可以在模型中调用self[:question] 来访问该属性的值。

我怎样才能为协会这样做?当我尝试以与 nil 相同的方式访问关联时。因此,即使我可以在模型外访问f.subs,但在模型内self[:subs] 却为零。

谢谢!

【问题讨论】:

  • self 指的是该特定对象的单例类...您需要使用 self.includes(:accounts) 加载它...像这样也可以访问关联。

标签: ruby-on-rails ruby-on-rails-4 associations models


【解决方案1】:

你能在模型里面试试self.subs吗?如果您的方法是实例方法,您始终可以使用 self.subs 调用属性和关联

self.subs 将针对self(这是您当前的对象)返回所有关联对象。获取任何属性,例如关联模型的名称。 你可以试试这个

assosiated_obj = self.subs.first
p assosiated_obj.name

【讨论】:

  • 就是这样! self.subs 返回了 ActiveRecord::Associations::CollectionProxy 类型的对象,所以我以为我不能使用它。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多