Listing < AR
has_many :images
accepts_nested_attributes_for :images, :allow_destroy => true
validate :validate_image_count
def validate_image_count
errors.add_to_base("too few") if images.length < 1
end
end
Image < AR
belongs_to :listing
end
В моей форме редактирования Листинга # я использую fields_for, чтобы предоставить поля для всех изображений вместе с флажками для удаления изображений.Это работает нормально.Я хочу применить проверку таким образом, чтобы листинг действовал только в том случае, если в нем было хотя бы одно изображение и максимум 6.
В моей текущей настройке я могу перейти к редактированию и удалению всех изображений, а затем обновитьЛистинг.
Я пытался использовать проверку, как показано выше, но это не вызывается.Может быть, именно так nested_attributes работает в рельсах.Каков наилучший способ применить эту проверку?