Rails 在 json 生成器中使用回形针

Rails using paper clip in json builder

我附上了名为图标的图片,它具有原始、中号和拇指三种形式。 我想在jbuilder

中使用thumbURL代替原来的thumb

这是模型中的缩略图声明

has_attached_file :icon, styles: { medium: "300x300>", thumb: "100x100>" }, default_url: "/images/:style/missing.png"

:iconindex.json.jbuilder 这里 return 是完整图像的 url 我怎样才能将它修改为 return 拇指 url

json.array!(@brands.visible) do |brand|
  json.extract! brand, :id, :name, :position, :visible, :permalink, :counter, :description, :icon
end

这是控制器中的动作

  def index
    @brands = Brand.all.sorted
  end

你不能用 extract! 来做,因为你需要将 :thumb 的参数传递给 icon。需要独立添加icon属性:

json.array!(@brands.visible) do |brand|
  json.extract! brand, :id, :name, :position, :visible, :permalink, :counter, :description
  json.icon brand.icon.url(:thumb)
end