Я хочу, чтобы иметь возможность удалять изображения в моей форме редактирования с помощью formtastic в Active_admin. Есть много сообщений об этом, но по какой-то причине я не могу заставить его соответствовать моей настройке.Удалить скрепки изображений Active Admin
У меня есть Post
модели и NewsImages
модели, которая держит изображения для каждого поста:
class Post < ActiveRecord::Base
has_many :news_images, dependent: :destroy
accepts_nested_attributes_for :news_images, allow_destroy: true
end
class NewsImage < ActiveRecord::Base
belongs_to :post
has_attached_file :photo
end
Так от того, что я прочитал флаг может быть добавлен к моей NewsImage модели, и иметь, прежде чем сохранить метод, удалит это изображение. Я предполагаю, что он будет выглядеть так, но он не удалит изображение при нажатии на флажок.
#/admin/post.rb
f.has_many :news_images do |p|
if p.object.new_record?
p.input :photo, as: :file
else
p.input :photo, as: :file, :hint => p.template.image_tag(p.object.photo.url(:thumb))
p.input :remove_image, as: :boolean, required: :false, label: 'Remove image'
end
end
Что-то я заметил в консоли на данном этапе при нажатии и из флажком его значение не изменится на зарегистрированный или незарегистрированный ... это предполагается?
NewsImage модель теперь выглядит как
class NewsImage < ActiveRecord::Base
before_save :remove_photo
belongs_to :post
private
def remove_photo
self.photo.destroy if self.remove_image == '1'
end
end
Есть ли что-нибудь здесь, что каждый может видеть, что вызвало бы это не работать, или же кто-то есть решение для такого рода установки?
Любая помощь приветствуется
Я получаю неизвестный атрибут: _destroy – buddy
Вы добавили '_destroy' в свои разрешенные параметры? вы используете рельсы 3 или 4? – Richlewis
Я использую рельсы 3. Я получил его работу с использованием attr_accessor и attr_accessible в модели. – buddy