【发布时间】:2013-11-27 18:49:37
【问题描述】:
我们知道,在 Rails 中,您可以为 has_many :through 连接模型添加额外的属性
我想从连接模型中提取额外的数据并用它填充视图。我通过直接引用连接模型来完成这项工作,但我想将相关的连接模型数据附加到当前项目,如下所示:
#app/models/message.rb
#Images
has_many :image_messages, :class_name => 'ImageMessage'
has_many :images, :class_name => 'Image', :through => :image_messages, dependent: :destroy
#app/views/messages/show.html.erb
<%= @message.image_messages.first.caption %> #-> works
#app/views/messages/show.html.erb
<%= @message.images.first.caption %> #-> what I'd like to happen
具体来说,我需要能够调用特定图像的caption,并将caption 存储在image_messages 连接模型中,如下所示:
#image_messages join table
id | message_id | image_id | caption | created_at | updated_at
据我所见,也许可以为此使用范围,但我不确定
任何帮助将不胜感激! 我想我会问这个问题,因为它是您不经常遇到的问题之一!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4