libjpeg PIL фотолог Джанго - PullRequest
       0

libjpeg PIL фотолог Джанго

0 голосов
/ 03 августа 2010

Так что я искал хорошее решение для отображения изображений, аудио, медиа в целом с помощью django:

Из того, что я нашел, есть следующие решения:

1.Фотолог:

Не могу заставить его работать.Требуются PIL и libjepg.

Я пытался установить оба, но столкнулся с различными проблемами сборки.

Кто-то из stackoverflow рекомендовал мне эту ссылку:

http://appelfreelance.com/2010/06/libjpeg-pil-snow-leopard-python2-6-_jpeg_resync_to_restart/

Это отличный учебник, в котором также говорится об удалении PIL и переустановке (наверное, мне придется это сделать).Но где-то в этом уроке я должен сделать это:

sudo rm -Rf build

И я не чувствую себя достаточно уверенно, чтобы запустить команду sudo rm.

Также я подумалдля этого должен быть более простой способ, поскольку КАЖДЫЙ блог должен отображать мультимедиа.

2.Сам Джанго говорит:

Пусть Apache сделает дисплей и использует это:

(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': '/pathtomedia/', 'show_indexes': True}),

для разработки, НО не для производства.

Так, что все используют дляпроизводство?

3.Другое:

Мне удалось отобразить изображения с помощью os.listdir, urllist и шаблона:

allimg= os.listdir("/pathtomyimages/")
 urllist = ['/site_media/Imagedir/%s' % url for url in allimg]
 return render_to_response('picture_display.html',
       {'allimg': allimg})

Но это также кажется не очень многообещающим, так как я хочу отображать изображения,аудио, мультимедиа из одного каталога на нескольких сайтах.

Я слышал, что paginator может быть решением.

Итак, теперь мой вопрос:

Какое самое лучшее, простое и надежное решение для отображения мультимедиа в django в разработке и на производстве?

Что вы используете?

Пожалуйста, помогите мне!

Спасибо за время.

Ответы [ 2 ]

0 голосов
/ 02 сентября 2010

Этот учебник на самом деле мой:)

sudo RM -rf build, все, что он на самом деле делает - это принудительно удаляет все предыдущие сборки, что в основном означает, что он очищает все, что связано со сборками.

надеюсь, это поможет

0 голосов
/ 04 августа 2010

django-photologue - приложение для управления изображениями и коллекциями изображений для вашего проекта, но оно не имеет прямого отношения к обслуживанию статических носителей.

Поскольку термины «лучший», «самый простой» и «надежный» - все это довольно субъективные термины, в зависимости от ваших конкретных потребностей, я рекомендую сначала попытаться понять, почему не принято распространять медиафайлы из Django. Короткий, общий ответ заключается в том, что Django должен быть загружен в каждый процесс веб-сервера, который обрабатывает запрос, и это будет использовать нетривиальный объем памяти. При обслуживании медиа-файла вы (обычно) просто возвращаете файл с диска. Поскольку никакой логики приложения не требуется, вы несете ненужные накладные расходы как из памяти, необходимой для запуска Django в процессе, так и из-за дополнительной обработки кода, которая будет выполняться для Django, чтобы сопоставить путь запроса с представлением, загрузить файл и выгрузить его в ответ. Веб-серверы (Apache, Nginx и т. Д.) Уже очень хорошо возвращают файлы с диска. Вот почему рекомендуется, чтобы ваш веб-сервер обрабатывал статические мультимедийные файлы. Запрос никогда не нужно передавать промежуточному программному обеспечению WSGI или Django.

Доступно много вариантов, но есть несколько, которые могут быть общими решениями. Например, если вы выбрали Apache в качестве веб-сервера, вам необходимо настроить его таким образом, чтобы запросы к вашему медиа-пути обрабатывались непосредственно Apache, а все остальные запросы передавались Django. Apache + mod_wsgi - довольно распространенный выбор AFAICT. Внимательно прочитайте это:

http://docs.djangoproject.com/en/1.2/howto/deployment/modwsgi/#howto-deployment-modwsgi

Нет необходимости настраивать отдельный веб-сервер, как рекомендуют документы. Вы можете использовать тот же экземпляр Apache для Django и медиа, который вы только начинаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...