clue_script é usado para definir subcomandos com um foco especial em aplicativos de estilo web. A funcionalidade é inspirado pelo script manage.py Django.
Uso
Um exemplo simples para adicionar um comando que imprime "Olá mundo":
de comando de importação clue_script, comandante
command
helloworld def ():
& Nbsp; print 'Olá mundo'
se __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) run ()
Para fazer um comando mais complicado você pode usar algo semelhante ao argparse Python 2.7 do (também disponível no 2.6).
argparse importação
de comando de importação clue_script, comandante
command
foo def (* argv):
& Nbsp; parser = argparse.ArgumentParser ()
& Nbsp; parser.add_argument ('- x', ajudar 'teste simples' =,
& Nbsp; padrão = "sim", metavar = 'x')
& Nbsp; ns = parser.parse_args (argv)
& Nbsp; # fazer alguma coisa
se __name__ == '__main__':
& Nbsp;. Commander.scan (globals ()) run ()
Oferecido Comandos
Existem atualmente duas fábricas de comando previstas.
& Nbsp; 1. make_reloadable_server_command (ver acima nota sobre os requisitos para runserver)
& Nbsp; 2. make_syncdb_command
Um aplicativo web típico poderia usar esses comandos como se segue:
se __name__ == '__main__':
& Nbsp; def createTables (sessão):
& 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 (definições ['spitter.db_session_factory'],
& nbsp; createTables)])
& Nbsp; commander.scan (globals ())
& Nbsp; commander.run ()
A execução do script sem argumentos irá produzir algo semelhante a:
Comandos:
& Nbsp; runserver executar um servidor web de desenvolvimento recarregável.
& Nbsp; syncdb Atualize o banco de dados
O que é novo nesta versão:.
- bug bobo fixo onde print_usage () estava sendo chamado errado
O que é novo na versão 0.3:
- Adicionado suporte Rfoo para o lançamento de um escudo para se conectar com live- executando http://code.google.com/p/rfoo/ servidor
- Melhorado formatação do uso do comando
- Removido comando praticamente inúteis make_syncdb
- Made Commander.commands um pouco mais expostos
O que é novo na versão 0.2.4:
- Corrigido o problema onde a porção não reloader fechasse para baixo o app se o código foi alterado.
Requisitos :
- Python
Comentários não encontrado