clue_script се използва за определяне подкоманди със специален фокус върху уеб стил приложения. Функционалността е вдъхновен от manage.py скрипта Django.
<Силен> Usage
Един прост пример, за да добавите команда, която отпечатва "Hello World":
от clue_script команда внос, Commander
command
Def HelloWorld ():
& Nbsp; печат "Здравей, свят"
ако __name__ == "__main__":
& Nbsp;. Commander.scan (глобални ()), експлоатирани ()
За да направите по-сложна команда можете да използвате нещо подобно на Python 2.7 на argparse (също на разположение на 2.6).
внос argparse
от clue_script команда внос, Commander
command
Def Foo (* argv):
& Nbsp; анализатор = argparse.ArgumentParser ()
& Nbsp; parser.add_argument ("- х", да помогне = 'прост тест ",
& Nbsp; подразбиране = "Да", metavar = "х")
& Nbsp; НЧ = parser.parse_args (argv)
& Nbsp; # направим нещо
ако __name__ == "__main__":
& Nbsp;. Commander.scan (глобални ()), експлоатирани ()
<Силен> При условие Команди
В момента има две предвидени командни фабрики.
& Nbsp; 1. make_reloadable_server_command (виж по-горе бележка за изисквания за runserver)
& Nbsp; 2. make_syncdb_command
Типичен уеб приложение може да използвате тези команди, както следва:
ако __name__ == "__main__":
& Nbsp; Def createtables (сесия):
& Nbsp; models.Base.metadata.create_all (session.bind)
& Nbsp; настройки = init_settings ()
& Nbsp; командир = script.Commander ([script.make_reloadable_server_command (make_app),
& Nbsp; script.make_syncdb_command (настройки ['spitter.db_session_factory "],
& Nbsp; createtables)])
& Nbsp; commander.scan (глобални ())
& Nbsp; commander.run ()
Работещи сценария без никакви аргументи ще се получи нещо подобно на:
Команди:
& Nbsp; runserver Стартирай презаредим уеб програмиране сървър.
& Nbsp; syncdb актуализира базата данни
Какво ново в тази версия:.
- Фиксирана глупава грешка, когато print_usage () е в нарича грешна
Какво ново във версия 0.3:
- Добавена rfoo подкрепа за стартиране на черупки, за да се свържете с live- използвате сървър http://code.google.com/p/rfoo/
- Подобрена форматиране на използването на командата
- Премахнато предимно безполезни команда make_syncdb
- Създадено Commander.commands малко по-изложени
Какво ново във версия 0.2.4:
- Фиксирана проблем, където не-reloader част ще затвори определяне на приложението, ако кода е променено.
<силни> Изисквания
- Python
Коментари не е намерена