Django

Django
Логотип
Тип программный каркас для создания веб-приложений
Разработчик Lawrence Journal-World
ОС Linux, Windows, Mac OS X, FreeBSD и др.
Текущая версия 0.95 — 30 июля 2006
Лицензия Лицензия BSD
Сайт www.djangoproject.com

Django (Джанго) — это программный каркас для создания веб-приложений, написанный на языке Python и построенный на принципах открытого ПО. Он примерно соответствует архитектуре «Модель-Вид-Контроллер» (MVC). Изначально был создан для управления несколькими новостными сайтами World Company (Лоуренс, штат Канзас, США) и был публично выпущен под лицензией BSD в июле 2005. Текущая стабильная версия Django — 0.95. Обратная совместимость кода не гарантируется до версии 1.0, которая вскоре готовится к выпуску. На настоящий момент стабильно 80% публичного кода.

Описание и возможности

Как и Ruby on Rails — другой популярный открытый программный каркас — Django использовался в рабочем режиме в World Company в течение некоторого времени перед своим выпуском. Его разработчики — Адриан Головаты (англ. Adrian Holovaty), Саймон Виллисон (англ. Simon Willison), Джекоб Каплан-Мосс (англ. Jacob Kaplan-Moss) и Вилсон Майнер (англ. Wilson Miner). Он использовался для управления тремя новостными сайтами: The Lawrence Journal-World, lawrence.com and KUsports.com. Django назван в честь джазового гитариста Джанго Рейнхардта.

Происхождение Django в новостной среде сильно заметно в его архитектуре: он предоставляет ряд средств, которые помогают в быстрой разработке веб-сайтов информационного характера. Так например разработчику не требуется создавать контроллеры и страницы для административной части сайта, в Django есть встроенное приложение для управления содержимым, которое можно включить в любой сайт, сделанный на Django, и которое может управлять сразу несколькими сайтами на одном сервере. Административное приложение умеет создавать, изменять и удалять любые объекты наполнения сайта, протоколируя все совершенные действия, и предоставляет интерфейс для управления пользователями и группам (с пообъектным назначением прав).

В дистрибутив Django также включены приложения для системы комментариев, синдикации в форматах RSS и Atom, «статических страниц» (которыми можно управлять без необходимости писать контроллеры и представления), перенаправления URL.

Другие возможности Django:

  • слой ORM
  • подключаемая архитектура приложений, которые можно устанавливать на любые Django-сайты
  • полноценный API доступа к БД с поддержкой транзакций.
  • встроенная система «generic views» — шаблонных функций контроллеров, которые избавляют от написания их вручную для некоторых частых задач
  • авторизация пользователей с возможностью подключения внешних модулей авторизации (например LDAP, OpenID)
  • расширяемая система шаблонов с тегами и наследованием
  • диспетчер URL на регулярных выражениях
  • система фильтров («middleware») для построения дополнительных обработчиков запросов, как например включенные в дистрибутив фильтры для кеширования, сжатия, нормализации URL и поддержки анонимных сессий
  • поддержка многоязычных и интернациональных приложений с уже имеющимися переводами административного приложения на многие языки
  • встроенная автоматическая документация по тегам шаблонов и моделям данных, доступная через административное приложение

Несмотря на то, что архитектура Django похожа на «Модель-Вид-Контроллер», его разработчики заявляют, что не обязуются строго придерживаться какой бы то ни было методологии, предпочитая делать то, «что кажется правильным» именно им. Так например то, что называется «контроллер» в классической модели MVC, в Django называется «вид» (англ. view), а то, что было бы «видом», называется «шаблон» (англ. template).

Конфигурация сервера

Изначально Django проектировался для работы под управлением Apache с модулем mod python и с использованием PostgreSQL в качестве базы данных. Сейчас, с включением поддержки WSGI, он может работать под управлением FastCGI или SCGI на Apache и других серверах (в частности, lighttpd) и подключаться к СУБД MySQL и SQLite. Сейчас в разработке находятся библиотеки для Microsoft SQL Server и Oracle. В Django также есть свой встроенный простой веб-сервер специально для разработки.

Внешние ссылки

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home