我正在使用 Ruby on Rails 实现一个通用媒体库。我选择了 ActiveAdmin 来处理我的任务的管理部分,到目前为止它运行良好,除了一件事:它没有按预期显示“选择文件”对话框。
这是我的 ActiveAdmin“媒体”部分的表单。我有一个名为“Medium”的模型,其中包含以下字段(除了 id
和 timestamp
之外):
asset_file_name
asset_file_size
asset_content_type
asset_updated_at
我的 Medium
模型如下所示:
class Medium < ActiveRecord::Base
has_and_belongs_to_many :galleries
has_and_belongs_to_many :entities
has_attached_file :asset, :styles => { :medium => "300x300>", :thumb => "100x100>" }
attr_accessible :asset
end
我将它添加到 ActiveAdmin 表单中,如下所示:
form :html => { :enctype => "multipart/form-data" } do |f|
f.input :asset, :as => :file
f.buttons
end
这是我的 ActiveAdmin 页面的屏幕截图:
我认为我的实现方式没有任何问题。我读到 Formtastic 一直以来都存在回形针问题,我不反对改用 attachment_fu 或任何其他合适的解决方案。
我还应该注意:我知道我可以添加自定义部分。这不是我理想的解决方案,因为我想将所有内容都保留在 Formtastic DSL 中。
谢谢!
最佳答案
Formtastic 要求您将对#input 的所有调用包装在对#inputs 的调用中。这绝对是我希望在 Active Admin 中修复的问题。
如果您将输入包装在对输入的调用中,它应该可以工作:
form :html => { :enctype => "multipart/form-data" } do |f|
f.inputs do
f.input :asset, :as => :file
end
f.buttons
end
让我知道这是否适合您。
关于ruby-on-rails - ActiveAdmin、Formtastic 和 Paperclip : Not Rendering File Dialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7549706/