ActiveAdmin を実行し、CarrierWave を使用して画像をアップロードする ROR アプリケーションがあります。複数の ProductImage を使用できるモデル Product を取得しました。新しい製品を追加し、アップロードする画像をいくつか選択するだけで、すべてがうまくいくようです. しかし、その製品を編集したい場合、画像は実際にはアップロードされていないようで、さらに次のエラーが表示されます。
undefined method `image_changed?'
私の推測では、最初のアップロードはあまり効果がないため、編集時に空になると思います。
以下は、管理フォームのスニペットです。
ActiveAdmin.register Product do
form(:html => {:multipart => true}) do |f|
f.inputs "Details" do
f.input :name
f.input :descr, :label => "Description"
f.input :brand, :as => :select, :collection => Brand.all, :member_label => :name, :label => "Brand"
# tags
f.autocomplete_field :tag_list, '/products/autocomplete_tag_name', :"data-delimiter" => ', '
f.input :tag_list, :hint => "Comma delimited tags"
end
f.has_many :product_images do |pi|
pi.inputs "Product Images" do
if !pi.object.nil?
pi.input :_destroy, :as => :boolean, :label => 'Destroy?'
end
pi.input :image_name
pi.input :image
end
end
f.buttons
end
end
編集
もう1つ知っていることは、投稿の作成時に画像がアップロードされ、その編集が機能することです..