В Django Framework с его концепцией MVC/MTV функционал приложений сильно размазан по разным файлам. Это довольно удобно с точки зрения разделения кода, но доставляет определенные неудобства при редактировании проекта. Неудобства значительно усиливаются, когда редактировать приходится не один проект, а несколько.
Для преодоления возникающих неудобств, а также для упрощения разработки и поддержки проектов на базе Django создан специализированный редактор кода Django DJ, на странице поддержки которого Вы имеете счастье находиться в данный момент.
Цели создания DJ
Первый уровень (частично достигнут). Он-лайн текстовый редактор с подсветкой синтаксиса и проект-браузером.
Дальнейшие планы. Специализированные редакторы на основе веб-форм для компонентов проекта - urls.py, models.py, admin.py и так далее. То есть какое-то подобие возможности визуального редактирования проектов Django. Нечто, напоминающее Typo3 Kickstarter, но с возможностью последующего редактирования.
Если найдутся волонтеры, желающие посвятить часть своего времени работе над данным проектом, буду очень рад. Сам имею возможность заниматься им только время от времени. Имена всех помощников будут увековечены в коде DJ и на этой страничке.
Все вопросы касательно участия в разработке, предложений по функционалу и так далее прошу задавать мне на почту, которая указана внизу страницы справа.
Версии, функционал и загрузка
0.4 (план) Он-лайн работа с manage.py - синхронизация базы данных, создание нового приложения и т.д.
0.3 (план) Работа с базой данных (добавление/изменение/удаление полей в таблицах), мобильный режим (минимум оформления, без подсветки синтаксиса - для редактирования с мобильных устройств с экранами малого разрешения).
0.2 (план) Поддержка FTP-проектов, шаблон страницы логина, закачка файлов на сервер.
0.1 (2010.06.02) Поддержка нескольких локальных проектов, дерево файлов проекта с возможностью исключения лишних веток, пароль на доступ в систему, редактор с подсветкой синтаксиса. Скачать (~140Кб).
Подключение DJ к существующему проекту
Заливаем приложение dj в папку проекта.
Копируем (или делаем симлинк) dj/media в www/media/dj.
Добавляем 'dj' в секцию INSTALLED_APPS файла settings.py
Добавляем настройки DJ_PASSWORD & DJ_PROJECTS & DJ_PREFIX в конец settings.py по шаблону:
DJ_PREFIX = 'dj' # Default value DJ_PASSWORD = 'mysuperstrongpassword' # Don't forget to change this! DJ_PROJECTS = [ { 'id': '1', 'title': 'My project title', 'path': u'/hosts/myproject.com/', 'exclude': ( 'www/media/dj', 'django/dj/media', 'www/media/admin', ), }, ]
Добавляем в urls.py:
(r'^dj/', include('dj.urls')), # Or other URL described in DJ_PREFIX
Ограничения
Если при редактировании проекта из DJ, работающего из того же самого проекта сохраненный код содержит ошибку, работа редактора может быть нарушена. Чтобы избежать этого, следует запускать DJ отдельным проектом.