ruby-on-rails - 从多态关联中链接对象

标签 ruby-on-rails ruby ruby-on-rails-4 polymorphic-associations

我有 2 个模型 ScreenAlbum

# Screen
belongs_to :attachable, :polymorphic => true

# Album
has_many :screens, :as => :attachable

我已经在屏幕表单上设置了专辑选择:

<% album_options = current_user.albums.map { |a| [a.title, "#{a.id}-Album"] } %>
<%= select :screen, :attachable_id, options_for_select(album_options) %>

现在我需要找到属于给定专辑的屏幕。我尝试了很多与此类似的变体:

# Album Controller
@summoner = @album.user
@album_screens = @summoner.screens.where('attachable_id', params[:id])

但不知何故,每个屏幕都显示在任何相册中。

我错过了什么?

最佳答案

将where子句改为

where(attachable_id: params[:id])

关于ruby-on-rails - 从多态关联中链接对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23314919/

相关文章:

ruby - 从 Ruby 中的用户输入字符串中提取多个整数?

javascript - 时刻.js : The result is always "a few seconds ago" in firefox/ie

ruby-on-rails - stylesheet_link_tag 'application' - 参数数量错误

java - 位于不同服务器上的 jruby 应用程序和 java 应用程序之间的通信

ruby-on-rails - 新分配的序列不起作用

ruby - 类型错误 : no implicit conversion of Hash into String

ruby-on-rails - Rails 4 sqlite3 Gem::LoadError

ruby-on-rails - 回形针力 下载

ruby-on-rails - 为什么 Rails 无表模型不包含关联?

ruby-on-rails - Rails 3 中的多层嵌套布局