clue_script naudojamas apibrėžti subcommands su ypatingą dėmesį skiriant interneto stiliaus apps. Funkcionalumas yra įkvėptas Django manage.py scenarijų.
Naudojimas
Paprastas pavyzdys pridėti komandą, kuri spausdina "Hello World":
nuo clue_script importo komandą vadas
command
Def HelloWorld ():
& Nbsp; spausdinti "hello world"
jei __name__ == '__main__ ":
& Nbsp;. Commander.scan (Globals ()) paleisti ()
Norėdami tai padaryti daug sudėtingiau komandą galite naudoti kažką panašaus į Python 2.7 anketa argparse (taip pat galima rasti 2.6).
importo argparse
nuo clue_script importo komandą vadas
command
Def rūšys (* argv):
& Nbsp; analizatorius = argparse.ArgumentParser ()
& Nbsp; parser.add_argument (- x, padėti = 'paprastą testą ",
& Nbsp; nutylėjimą = "Taip", metavar = "x")
& Nbsp; Ns = parser.parse_args (argv)
& Nbsp; # kažką daryti
jei __name__ == '__main__ ":
& Nbsp;. Commander.scan (Globals ()) paleisti ()
Jei Komandos
Šiuo metu yra du numatytos komanda fabrikai.
& Nbsp; 1. make_reloadable_server_command (žr pastabos apie reikalavimus runserver)
& Nbsp; 2. make_syncdb_command
Tipiškas Web App "gali naudoti šias komandas taip:
jei __name__ == '__main__ ":
& Nbsp; Def createtables (sesija):
& Nbsp; models.Base.metadata.create_all (session.bind)
& nbsp; Settings = init_settings ()
& Nbsp; vadas = script.Commander ([script.make_reloadable_server_command (make_app)
& Nbsp; script.make_syncdb_command (nustatymai ['spitter.db_session_factory'],
& nbsp; createtables)])
& Nbsp; commander.scan (Globals ())
& Nbsp; commander.run ()
Veikia scenarijų be ARG duos kažką panašaus į:
Komandos:
& Nbsp; runserver Pradėti papildoma ir plėtra serverį.
& Nbsp; syncdb atnaujinti duomenų bazę
Kas naujo , šioje laidoje.
- Fiksuotas kvaila klaida, kai print_usage () buvo yra vadinamas negerai,
Kas naujo 0.3 versijos:
- Pridėta rfoo parama pradeda lukštais prisijungti su live- veikia serveris http://code.google.com/p/rfoo/
- Geresnis formatavimas komandų naudojimas;
- Pašalinta dažniausiai nenaudingas make_syncdb komandą "
- Made Commander.commands tiek daugiau veikiami
Kas naujo versijos 0.2.4:
- Fiksuotas problema, kai ne Reloader dalis būtų uždaryti žemyn app, jei buvo pakeista kodas.
Reikalavimai
- Python,
Komentarai nerastas