ruby-on-rails - Show 方法中的 ActiveAdmin 显示集合

标签 ruby-on-rails activeadmin

我有包,它有多个组件(使用 has_many 通过捆绑链接)

在 ActiveAdmin 中,当我显示一个包时,我希望能够显示链接到它的所有组件

所以我有一个显示方法如下:

show do
 attributes_table do
  row :description

  row 'Components' do |n|
     package.components.each do |component|
       #debugger
       component.name
     end
  end
 end
end

当我显示页面时,它会显示每条记录的完整版本,即(我在下面显示其中一个,但组件数量将与组件一样多):
[#<Component id: 2, component_token: "6e9be0b0-71c0-012f-d523-00254bca74c4", name: "Exercise Module", description: "This is the exercise module", created_at: "2012-04-26 11:25:20", updated_at: "2012-04-26 11:25:20">]

当我在注释的地方停止调试器时,component.name 的值作为“Exercise Module”给出,但这不是输出到节目的内容 - 事实上,ActiveAdmin 似乎忽略了该组件中的所有内容|堵塞。

如何显示记录属性,而不是整个记录本身?

谢谢

最佳答案

发生这种情况是因为该行显示了该行的输出 package.components.each {|component| ... }这就是收藏

试试这个:

show do

 attributes_table do
  row :description

  row 'Components' do |n|
     package.components.map(&:name).join("<br />").html_safe
  end
 end

end

或您喜欢的任何其他连接字符串:)

关于ruby-on-rails - Show 方法中的 ActiveAdmin 显示集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10333007/

相关文章:

ruby-on-rails - jRuby bundle 安装错误

ruby-on-rails - Capistrano 安全最佳实践

ruby-on-rails - 事件记录中的动态 where 子句避免 sql 注入(inject)

ruby-on-rails - 如何在activeadmin中添加tinymce-rails gem?

ruby-on-rails - 事件管理路由错误未初始化常量 Admin::DashboardController

ruby-on-rails - 缓慢的 activeadmin 索引页面

ruby-on-rails - ActiveAdmin:未定义的方法 'unscoped'

ruby-on-rails - Rails - ActiveAdmin 和 Papertrail - 一种 DRY 方法

ruby-on-rails - rails 渲染集合嵌套部分

ruby-on-rails - 运行时错误 : #let or #subject called without a block