如何使用载波添加多个图像
How to add multiple images using carrierwave
我创建了表单,但是在单击时,选择图像选项没有附加以添加多个图像。
请给我一个解决方案
我的属性form.html.erb
<%= simple_nested_form_for ([:generic_users, @property]) do |f| %>
<%= f.input :image, required: true %>
<p><%= image_tag @property.image_url(:thumbnail) if @property.image? %></p>
<%= f.hidden_field :image_cache %>
<%= f.simple_fields_for :property_images do |i| %>
<%= i.input :image %>
<p><%= image_tag i.object.image_url(:thumbnail) if i.object.image? %></p>
<%= i.hidden_field :image_cache %>
<%= i.link_to_remove 'Remove',method: :delete, class: 'btn btn-danger'%>
<% end %>
</div>
</div>
<hr>
<%= f.link_to_add 'Add Image', :property_images, class: 'btn btn-primary', data: {target: '.additional-images'} %>
<hr>
<% end %>
this is my propertyImage model
class PropertyImage < ActiveRecord::Base
belongs_to :property
validates_presence_of :image
mount_uploader :image, ImageUploader
end
my property.rb
class Property < ActiveRecord::Base
has_many :property_images, dependent: :destroy
accepts_nested_attributes_for :property_images, allow_destroy: true
end
这就是我获取页面的方式,单击“添加图像”后,没有出现用于选择图像的多个选项。
请给我一个解决方案
我不清楚您的代码在何处呈现实际的文件输入。但是,对于多个文件选择,您需要这样的代码:
<%= f.file_field :image, multiple: true, require: true %>
您可以使用
<%= file_field_tag "images[]", type: :file, multiple: true %>
而不是<%= f.file_field :image, multiple: true, require: true %>
如果您要上传多张图片,则会在 from 参数中创建一个名为 images[]
的图片数组
我创建了表单,但是在单击时,选择图像选项没有附加以添加多个图像。 请给我一个解决方案
我的属性form.html.erb
<%= simple_nested_form_for ([:generic_users, @property]) do |f| %>
<%= f.input :image, required: true %>
<p><%= image_tag @property.image_url(:thumbnail) if @property.image? %></p>
<%= f.hidden_field :image_cache %>
<%= f.simple_fields_for :property_images do |i| %>
<%= i.input :image %>
<p><%= image_tag i.object.image_url(:thumbnail) if i.object.image? %></p>
<%= i.hidden_field :image_cache %>
<%= i.link_to_remove 'Remove',method: :delete, class: 'btn btn-danger'%>
<% end %>
</div>
</div>
<hr>
<%= f.link_to_add 'Add Image', :property_images, class: 'btn btn-primary', data: {target: '.additional-images'} %>
<hr>
<% end %>
this is my propertyImage model
class PropertyImage < ActiveRecord::Base
belongs_to :property
validates_presence_of :image
mount_uploader :image, ImageUploader
end
my property.rb
class Property < ActiveRecord::Base
has_many :property_images, dependent: :destroy
accepts_nested_attributes_for :property_images, allow_destroy: true
end
这就是我获取页面的方式,单击“添加图像”后,没有出现用于选择图像的多个选项。 请给我一个解决方案
我不清楚您的代码在何处呈现实际的文件输入。但是,对于多个文件选择,您需要这样的代码:
<%= f.file_field :image, multiple: true, require: true %>
您可以使用
<%= file_field_tag "images[]", type: :file, multiple: true %>
而不是<%= f.file_field :image, multiple: true, require: true %>
如果您要上传多张图片,则会在 from 参数中创建一个名为 images[]
的图片数组