3

Добрый день, имеется модель вида

class Image(models.Model):
    image = models.ImageField(..)
    info = models.TextField(..)

т.е. обычное изображение с каким-то описанием. Заливка производится через админку. Заливать поштучно - не удобно. Можно ли как-то запилить модель и заливать через админку сразу по несколько изображений, на примере инлайнов? Желательно без подключения сторонних js-библиотек :)

metazet
  • 2,778
  • 2
  • 18
  • 27

3 Answers3

3

Ну сделайте еще одну модель, типа ImageSet, в Image добавьте ForeignKey на неё, и подключив Inline, - можете заливать сразу кучу картинок.

Nicolas Chabanovsky
  • 51,426
  • 87
  • 267
  • 507
Тарас
  • 470
  • 3
  • 14
  • Это уже приделывание костыля, саааамый крайный вариант) Нужно элегантное решение :) – metazet Jul 28 '11 at 15:43
  • Ничего хитрее не придумал, сделаю как Вы предложили :) – metazet Jul 29 '11 at 15:54
1

Я думаю что лучше всего использовать все-таки библиотеки, т.к они написаны хорошо и имеют хорошее время выполнения! Вот что вам понадобится

  1. jQuery Multiple File Upload Plugin v1.31 тута (сам плагин)
  2. Query Form Plugin v2.18 тута (Плагин для ajax работы с формами.)
  3. jQuery BlockUI Plugin v2.14 тута (для ошибок)
  4. ну JQuery найдете сами))

Апишки довольно простые, написать не сложно) Как и что делать дальше можно прочитать вот тута

  • Спасибо, что не поленились указать все источники, но я написал, что желательно без подключения стороннего js :) Я уж лучше сделаю костыль с доп. моделью... – metazet Jul 28 '11 at 17:13
0

Вот в этой книге "Django Разработка веб-приложений на Python", в главе - создание галереи, там подробно всё описано и там как рас применяется метод загрузки одновременно нескольких картинок.

Качайте книгу и за 10 минут разберётесь с первоисточника.

trec
  • 1,279
  • За наводку конечно спасибо, да только там используется принцип, описанный товарищем @Тарас. – metazet Jul 28 '11 at 17:09
  • Понял, тогда ему +1. Отметите верное решение, если будет, может когда пригодится. – trec Jul 28 '11 at 17:37
  • Конечно отмечу, если его найдём... Пока что предложенные варианты не очень подходят. – metazet Jul 28 '11 at 18:22