我正在尝试显示用户使用
更新帖子的时间<%= current_user.hwaters(:updated_at).to_s %>
User
has_many :hwaters
和Hwaters
belongs_to :user
为什么这不起作用?
答案 0 :(得分:2)
如果我理解你想做什么,我想你可以试试:
<%= current_user.hwaters.map(&:updated_at).join(', ') %>
顺便说一下,您可以阅读有关Rails Active Record Association here的更多信息,以了解其工作原理。
答案 1 :(得分:1)
您正在尝试显示一对多关联的updated_at。这不起作用,您需要选择其中一个项目并显示时间戳(或按照kitz的描述显示所有项目)
答案 2 :(得分:1)
回答“为什么这不起作用?”的问题:
根据Active Record Associations guide,
4.3.1.1集合(force_reload = false)
collection方法返回所有关联对象的数组。如果没有关联的对象,则返回一个空数组。
(重点补充)。
所以,当你打电话时
current_user.hwaters
您正在接收Array的实例。当你打电话时
current_user.hwaters(:updated_at)
数组不知道如何回复(:updated_at)
。所以,它落在地板上,踢和尖叫,并发出一阵大发脾气。
关于“如何使这项工作”的其他答案非常好。而且慷慨。你应该遵循它们。并接受他们。并投票支持他们。并在整个宇宙中传播爱。