Загрузка нескольких изображений Django в администраторе без сторонних приложений

Мне снова нужна ваша помощь, и я очень надеюсь, что кто-то может предложить пошаговое руководство, которому легко следовать, потому что я новичок.

Я пытаюсь создать портфолио фотографий, и я понятия не имею, как загружать несколько полей изображений в администраторе. В итоге я хочу получить приложение для фотографий, которое позволит мне загружать несколько изображений одновременно в одной категории (например, «Пейзаж»). Было бы неплохо, если бы я также мог изменять их размер с помощью Django в процессе загрузки, чтобы мне пришлось изменять их размер в Photoshop. Затем я хочу иметь возможность использовать каменную кладку для отображения всех моих изображений и фильтровать их по категориям с использованием изотопов.

Я ищу решение без установки сторонних решений, таких как django-admin-multiupload или jQuery File Upload. Не могли бы вы помочь мне начать? Большое спасибо


person IoanCosmin    schedule 19.01.2017    source источник


Ответы (1)


Вот пример модели, которая будет работать.

class Category(models.Model):
    name = models.CharField(max_length=250)

class Image(models.Model):
    file = models.ImageField(upload_to='images')
    category = models.ForeignKey(Category)

Для сайта администратора вы можете использовать встроенный администратор чтобы при редактировании категории вы могли загружать несколько изображений на одну страницу без сторонней библиотеки.

class ImageInline(admin.TabularInline):
    model = Book

class CategoryAdmin(admin.ModelAdmin):
    inlines = [
        ImageInline,
    ]
person Edwin Lunando    schedule 19.01.2017
comment
Привет Эдвин. Ваше решение звучит замечательно, спасибо, что помогли мне! Я попробую это прямо сейчас. У меня есть одна маленькая просьба. Насколько я понимаю, встроенный администратор помогает с несколькими загрузками на одной странице, но мне все равно приходится выбирать по одному. Я прав? Я хочу иметь возможность выбрать 10 фотографий за раз и загрузить их. У меня есть ощущение, что наборы форм могут помочь, но я понятия не имею, с чего начать. Не могли бы вы включить это в код выше? Спасибо Эдвин! - person IoanCosmin; 19.01.2017
comment
Эй, Эдвин, я попробовал твой метод. Это не то, что я ищу. Я хочу загрузить их все сразу. Таким образом, я должен выбирать их один за другим, что занимает много времени. У тебя есть другие идеи? - person IoanCosmin; 21.01.2017