Everebody您好,我以多张上传的照片的显示方式有问题
您可以看到此上传的其他文件
ActiveAdmin文件
ActiveAdmin.register Photo do
permit_params :car_id, { photos: [] }
index do
selectable_column
id_column
column "numéro voiture", :car_id
column "Photo" do |photo|
"<a href='#{photo.photos_urls}'><img src='#{photo.photos_urls}' width='150'></a>".html_safe
end
actions
end
form do |f|
f.inputs do
f.input :car_id
f.input :photos, as: :file, input_html: { multiple: true }
actions
end
photos_uploader.rb
class PhotosUploader < CarrierWave::Uploader::Base
CarrierWave::SanitizedFile.sanitize_regexp = /[^_[:word:]\.\-\+]/
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
def extension_whitelist
%w(jpg jpeg gif png)
end
end
photo.rb
class Photo < ApplicationRecord
mount_uploaders :photos, PhotosUploader
belongs_to :car
end
car.rb
class Car < ApplicationRecord
extend FriendlyId
friendly_id :title, use: :slugged
mount_uploader :photo, PhotoUploader
has_many :photos
end
答案 0 :(得分:0)
您的表格如何?请检查是否设置了多个文件的属性:
<%= form.file_field :photo, multiple: true %>
此外,如果您要上传不同模型的文件,建议您创建另一个上传器(每个模型的每个属性一个上传器)。 photo
应该是属性,而不是模型。
mount_uploader :photo, PhotoUploader
有关更多信息: github carrierwave
答案 1 :(得分:0)
form do |f|
f.inputs do
f.input :car_id
f.input :photos, as: :file, input_html: { multiple: true }
actions
end
我的表单已进入有效的管理文件
我有2张照片上传器1用于头像,第二张用于多张照片用于汽车课程