Rails:活动管理员关联图像列

zer*_*r02 8 ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 activeadmin

我是ruby on rails的新手,刚刚安装了活动管理员,并试图自定义

观点.

我有一个产品和图像表.每张图片属于一个产品.

现在,我想在显示产品页面时显示包含相关图像的列.

目前只有image_url文本不起作用.后来我想做

让图片以50x50px显示.

我该怎么做?(图片模型:name:string image_url:text)

这是我做的:

ActiveAdmin.register Product do

index do
    column "Image" do |image|
        image.image_url
    end
    column :name
    column :preview_text
    column :full_text
    column :price, :sortable => :price do |product|
      div :class => "price" do
          number_to_currency product.price
     end
    end
 default_actions
 end
end
Run Code Online (Sandbox Code Playgroud)

我不知道如何用"做图像"修复那部分.我是rails 2天exp的初学者..

似乎语法错误并抛出错误:

undefined method `image_url' for #<Product:0x00000101b5a458>
Run Code Online (Sandbox Code Playgroud)

谢谢

Luí*_*lho 12

你需要image_url从图像对象中获取product.image.image_url.

关于图像尺寸,您可以显示所需尺寸的图像,如此

column "Image" do |product|
  image_tag product.image.image_url, class: 'my_image_size'
end
Run Code Online (Sandbox Code Playgroud)

的CSS

.my_image_size {
  width: 50px;
  height: 50px;
}
Run Code Online (Sandbox Code Playgroud)

或者您可以使用CarrierWave等宝石实际调整图像大小.

  • 或者你可以只做`image_tag product.image.image_url, size: "50x50"` 而不需要处理css。 (3认同)