clue_script se utiliza para definir subcomandos con un enfoque especial en aplicaciones de tipo web. La funcionalidad está inspirada en el guión manage.py Django.
Uso
Un ejemplo sencillo para agregar un comando que imprime "hola mundo":
del comando de importación clue_script, Comandante
Command
helloworld def ():
& Nbsp; print 'hola mundo'
if __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) run ()
Para hacer una orden más complicado se puede usar algo similar a argparse de Python 2.7 (también disponible en 2.6).
argparse importación
del comando de importación clue_script, Comandante
Command
foo def (* argv):
& Nbsp; parser = argparse.ArgumentParser ()
& Nbsp; parser.add_argument ('- x', ayuda = 'prueba simple',
& Nbsp; predeterminado = 'sí', metavar = 'x')
& Nbsp; ns = parser.parse_args (argv)
& Nbsp; # hacer algo
if __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) run ()
Siempre Comandos
Actualmente hay dos fábricas de mando previstos.
& Nbsp; 1. make_reloadable_server_command (véase más arriba nota sobre requisitos para la ejecución del servidor)
& Nbsp; 2. make_syncdb_command
Una aplicación web típica podría usar estos comandos de la siguiente manera:
if __name__ == '__main__':
& Nbsp; def createTables (sesión):
& Nbsp; models.Base.metadata.create_all (session.bind)
& nbsp; settings = init_settings ()
& Nbsp; comandante = script.Commander ([script.make_reloadable_server_command (make_app),
& Nbsp; script.make_syncdb_command (ajustes ['spitter.db_session_factory'],
& nbsp; createTables)])
& Nbsp; commander.scan (globals ())
& Nbsp; commander.run ()
Ejecución del script sin argumentos producirá algo similar a:
Comandos:
& Nbsp; Ejecutar runserver un servidor de desarrollo web recargable.
& Nbsp; syncdb Actualización de la base de datos
¿Cuál es nuevo en esta versión:.
- error tonto Solucionado print_usage () estaba siendo llamada equivocada
¿Cuál es nuevo en la versión 0.3:
- Soporte rfoo Añadido para el lanzamiento de un proyectil para conectar con el ganado corriendo http://code.google.com/p/rfoo/ servidor
- Mejoras en el formato de uso del comando
- Comando make_syncdb mayoría inútiles eliminado
- Hecho Commander.commands un poco más expuesta li>
¿Cuál es nuevo en la versión 0.2.4:
- Arreglado el problema donde la parte no recargador sería cerrada por la aplicación, si se ha cambiado el código.
Requisitos
- Python
Comentarios que no se encuentran