#django #django-commands
#django #django-команды
Вопрос:
Мне нужно создать проект Django с другой структурой файлов и папок. В частности, мне нужно добавить 2 папки: qqapp
и qqproject
при создании нового приложения с помощью startapp
команды, каждая из которых содержит несколько базовых файлов.
Как я могу переопределить базовые команды или добавить пользовательские?
Мое текущее решение — редактирование файлов базовых команд (изменение имени каталога для папок по умолчанию) django/core/management/commands/startapp|project.py,
, но я думаю, что это плохая идея.
Ответ №1:
Для этого используйте шаблоны проектов.
django-admin.py startproject --template=/path/to/my_project_template myproject
Ответ №2:
для этого есть документация: https://docs.djangoproject.com/en/dev/howto/custom-management-commands /
Комментарии:
1. я знал об этом, но для создания пользовательских команд нам нужно создать приложение и добавить его в INSTALLED_APPS .. или я ошибаюсь?
2. кстати, я хочу создать команду startproject .. в тот момент у нас был проект, так что это не подходит для меня, я думаю
3. Я посмотрел на источник: code.djangoproject.com/browser/django/trunk/django/core/… Вы можете установить свою команду в файл django.core, и в этом случае вам не понадобится приложение. однако это все еще не очень чисто.
4. сейчас я использую что-то вроде этого, это работает, но ищу хороший способ для этого, если это возможно)
5. вы имеете в виду, что хотите избежать размещения вашего кода в каталоге django / core?