Используйте Carrierwave с активным администратором - PullRequest
15 голосов
/ 25 ноября 2011

Кто-нибудь из вас, ребята, смог установить Active Admin с работающей Carrierwave?

Когда я установил AA, все работало нормально, но загрузка файла изображения поля были текстовыми полями, поэтому добавлено следующее:

ActiveAdmin.register Club do
  form do |f|
    f.inputs "Club" do
      f.input :league
      f.input :name
      f.input :image, :as => :file
      f.input :approved
    end
    f.buttons
  end
end

Теперь он отображается как поле загрузки файла, и я могу выбрать файл, но после того как я отправил форму ничего не изменилось. Там до сих пор нет изображения и поле изображения пустое. Кто-нибудь знает, что еще нужно сделать, чтобы получить его рабочий?

Ответы [ 2 ]

35 голосов
/ 29 ноября 2011

Наконец-то нашел проблему.

form do |f|

должно стать:

form(:html => { :multipart => true }) do |f|

Я до сих пор не знаю, почему консоль не работает, но, по крайней мере, теперь я могу загружать новые изображения :) Большое спасибо за помощь, bruno077!

2 голосов
/ 25 ноября 2011

Да, это работает без проблем, не забудьте установить attr_accessible, если вы этого не сделали. В соответствии с вашей конфигурацией у вас должен быть следующий код в вашей модели:

#app/models/club.rb

class Club < ActiveRecord::Base
  attr_accessible (previous list), :image #If exists
  mount_uploader :image, ImageUploader
end

И, конечно, вы должны были сгенерировать загрузчик изображений с

rails generate uploader image

Редактировать: вы можете следовать Ryan's Railscast , если у вас есть какие-либо проблемы. Это то, что я сделал для своего приложения ActiveAdmin с Carrierwave

...