我开始使用formstatic,但我需要创建一个带有图像预览的文件字段。我的意思是,当我编辑一个对象时,我希望看到已经链接的图像。
我该怎么做?
谢谢!
答案 0 :(得分:48)
答案是使用提示属性:
ActiveAdmin.register Event do
form :html => { :enctype => "multipart/form-data" } do |f|
f.input :map, :as => :file, :hint => f.template.image_tag(f.object.map.url(:thumb))
end
end
再见
答案 1 :(得分:3)
将paperclip与formtastic一起使用
Formtasitc的github page提到它支持回形针:
:file - 文件字段。文件附件属性的默认值匹配: paperclip 或attachment_fu。
以下是一些有用的截屏视频:
修改强>
要在ActiveAdmin中的网格列中显示图像,您需要创建一个自定义列(这是未经测试的,可能有缺陷,我从documentation推断出来):
index do
column "Title" do |post|
link_to image_tag("path to file", :alt => "post image"), admin_post_path(post)
end
end
答案 2 :(得分:1)
两个Gems和一个插件可以帮助您解决问题:
请务必查看:
宝石:
回形针:https://github.com/thoughtbot/paperclip
PaperClip上的RailsCast :http://railscasts.com/episodes/134-paperclip
CarrierWave :https://github.com/carrierwaveuploader/carrierwave
CarrierWave上的RailsCast :http://railscasts.com/episodes/253-carrierwave-file-uploads
Jquery文件上传:https://github.com/blueimp/jQuery-File-Upload
Jquery文件上传RailsCast :http://railscasts.com/episodes/381-jquery-file-upload (需要RailsCast的专业帐户)
答案 3 :(得分:0)
正如@ianpetzer所说,在Rails 4.2 / ActiveAdmin master中,当前的答案也会导致写出对象引用。 2016年的正确答案应与此answer类似:
form :html => { :multipart => true } do |f|
f.inputs do
#...
f.input :image, required: false, hint: image_tag(object.image.url(:medium)).html_safe
#...
end
end