clue_script brukes for å definere kommandoene med et spesielt fokus på web-stil apps. Funksjonaliteten er inspirert av Django manage.py script.
Bruk
Et enkelt eksempel å legge til en kommando som skriver "hello world":
fra clue_script import-kommandoen, Commander
command
def Helloworld ():
& Nbsp; print 'hello world "
hvis __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) kjøre ()
For å gjøre en mer komplisert kommando du kan bruke noe som ligner på Python 2.7 er argparse (også tilgjengelig på 2.6).
import argparse
fra clue_script import-kommandoen, Commander
command
def foo (* argv):
& Nbsp; parser = argparse.ArgumentParser ()
& Nbsp; parser.add_argument ('- x', hjelp = 'enkel test',
& Nbsp; default = "ja", metavar = 'x')
& Nbsp; ns = parser.parse_args (argv)
& Nbsp; # gjøre noe
hvis __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) kjøre ()
Forut Kommandoer
Det er for tiden to medfølgende kommando fabrikker.
& Nbsp; 1. make_reloadable_server_command (se ovenfor merknad om krav til runserver)
& Nbsp; 2. make_syncdb_command
En typisk web app kan bruke disse kommandoene som følger:
hvis __name__ == '__main__':
& Nbsp; def createtables (økt):
& Nbsp; models.Base.metadata.create_all (session.bind)
& nbsp; settings = init_settings ()
& Nbsp; commander = script.Commander ([script.make_reloadable_server_command (make_app),
& Nbsp; script.make_syncdb_command (innstillinger ['spitter.db_session_factory'],
& nbsp; createtables)])
& Nbsp; commander.scan (globals ())
& Nbsp; commander.run ()
Kjører skriptet uten args vil gi noe som ligner på:
Kommandoer:
& Nbsp; runserver Kjør en reloadable utvikling web server.
& Nbsp; SyncDB oppdatere databasen
Hva er nytt i denne utgaven.
- Fast dum feil der print_usage () var å være heter galt
Hva er nytt i versjon 0.3:
- Lagt rfoo støtte for å lansere et skall for å få kontakt med live- kjører serveren http://code.google.com/p/rfoo/
- Forbedret formatering av kommandoen bruk
- Fjernet stort sett ubrukelig make_syncdb kommandoen
- Made Commander.commands litt mer utsatt
Hva er nytt i versjon 0.2.4:
- Fast problem der de ikke-Reloader del ville stenge ned app hvis koden ble endret.
Krav
- Python
Kommentarer ikke funnet