Django-босс реализация идей, изложенных в моем блоге о командах управления Django. С его помощью вы можете задать команды в отдельных приложениях, а затем запустить их с помощью djboss интерфейс командной строки.
<Сильный> Установка Django-босс
На данный момент, установка производится с помощью easy_install Django-босса или пункт установить Django-босса. Единственные предпосылки argparse, которого установка обрабатывается Setuptools и Джанго, который вы должны устанавливаться в настоящее время так или иначе.
<Сильный> Написание Команды
Команды определяются как экземпляры djboss.commands.Command, присутствующих в командах подмодуль внутри установленной приложением. Например, возьмем следующую структуру приложения:
echoapp /
| - __init__.py
| - Commands.py
`- Models.py
Commands.py файл подмодуль, которые могут быть импортированы в echoapp.commands.
<Сильный> С Декораторы
Ниже полный пример правильного файла commands.py:
от djboss.commands импортировать *
command
Def привет (аргументы):
& NBSP; "" "Версия для печати клише к консоли." ""
& NBSP; печать "Hello, World!"
Этот пример используетcommand декоратор заявить, что функция команды Django-босс. Вы можете добавить аргументов команд тоже; просто использоватьargument декоратор (убедитесь, что они приходят послеcommand):
command
argument ('- п', '--no-новая строка', действие = "store_true",
& NBSP; помощь = "Не добавлять символ конца строки.")
Def привет (аргументы):
& NBSP; "" "Версия для печати клише к консоли." ""
& NBSP; если args.no_newline:
и NBSP; импорт SYS
& NBSP; sys.stdout.write ("Hello, World!")
& NBSP; другое:
& NBSP; печать "Hello, World!"
argument Декоратор принимает все argparse.ArgumentParser.add_argument () делает; проконсультироваться argparse документы для получения дополнительной информации.
Вы также можете комментировать команды, давая аргументы ключевых слов, чтобыcommand:
command (имя = "что-то", описание = "ли что-нибудь.")
Def do_something (аргументы):
& NBSP; "" ". Сделайте что-нибудь" ""
& NBSP; печать "что-то было сделано."
В этом случае, команда будет называться "что-то", а не автоматически созданное "сделать что-то,", и его описание будет отличаться от его строку документации. Для получения более подробной информации о том, что может быть принят здесь, обратитесь к argparse.ArgumentParser документы.
<Сильный> Без Декораторы
API очень похож, не декораторов. Класс команда используется, чтобы обернуть функции, и вы можете дать ключевые аргументы при вызове какcommand:
Def эхо (аргументы):
& NBSP; ...
эхо = Команда (эхо, имя = '...', описание = '...')
Добавление аргументов использует метод Command.add_argument (), который находится всего ссылка на генерируемого югу от анализатора и Rsquo; s add_argument) метод (:
Def эхо (аргументы):
& NBSP; ...
эхо = Команда (эхо, имя = '...', описание = '...')
echo.add_argument ('- п', '--no-новая строка', ...)
echo.add_argument («слова», nargs = '*')
<Сильный> Запуск команд
Команды выполняются через djboss интерфейс командной строки. Для этого правильно, вам нужно одно из двух:
* Переменная среды DJANGO_SETTINGS_MODULE которая относится к действительным, импортируемых модуля Python.
* Действительно, импортируемые настройки модуля в текущем рабочем каталоге.
После того, как один из тех, покрыта, вы можете запустить его:
djboss --help
Использование: djboss [-h] [-v] [-l LEVEL] Команда ...
Запуск команды управления Django-босс.
необязательные аргументы:
& NBSP; -h, --help показать эту справку и выйти
& NBSP; -v, --version Номер версии шоу-программа и выход
& NBSP; -l уровне, --log-Уровень
& NBSP; Выберите уровень журнала DEBUG от, INFO, WARN (по умолчанию)
& NBSP; или ошибка.
команды:
& NBSP; КОМАНДА
& NBSP; эхо Эхо аргументы обратно в консоль.
& NBSP; привет Распечатать клише к консоли.
Чтобы узнать суб-команд, djboss первые находки и импорт настройки Django.
Переменная окружения DJANGO_SETTINGS_MODULE имеет приоритет, но если не указано, djboss будет искать `settings` модуля в текущем каталоге. Команды должны быть определены в `commands` подмодуль каждого приложения. djboss будет искать каждый из ваших INSTALLED_APPS для команд управления.
Каждый субкоманда получает опции --help также:
djboss эхо --help
использование: djboss эхо [-h] [-n] [слова [слова ...]]
Эхо аргументы обратно в консоль.
позиционные аргументы:
и NBSP; слова
необязательные аргументы:
& NBSP; -h, --help показать эту справку и выйти
& NBSP; -n, --no-новая строка не печатать строку после.
И тогда вы можете запустить его:
djboss эхо несколько слов здесь
некоторые слова здесь
Больше же:
djboss привет --help
Использование: djboss привет [-h]
Распечатать клише к консоли.
необязательные аргументы:
& NBSP; -h, --help показать эту справку и выйти
И наконец:
djboss привет
Hello, World!
Требования:
- Джанго
- Python
Комментарии не найдены