TurboGears: primer programa

TurboGears tiene un modo mínimo que hace posible crear aplicaciones de un solo archivo rápidamente. Se pueden crear rápidamente ejemplos y servicios sencillos con un conjunto mínimo de dependencias.

La clase de aplicación en una aplicación TG se hereda de TGControllerclase. Los métodos de esta clase están disponibles para el acceso de@expose decorador de tgmódulo. En nuestra primera aplicación,index()El método se asigna como raíz de nuestra aplicación. La clase TGController también debe importarse desdetg módulo.

from tg import expose, TGController
class MyController(TGController):
   @expose()
   def index(self):
      return 'Hello World turbogears'

A continuación, establezca la configuración de la aplicación y declare el objeto de la aplicación. AppConfig El constructor de clases aquí toma dos parámetros: el atributo mínimo establecido en verdadero y la clase del controlador.

config = AppConfig(minimal = True, root_controller = RootController())
application = config.make_wsgi_app()

los make_wsgi_app() la función aquí construye el objeto de la aplicación.

Para servir esta aplicación, ahora necesitamos iniciar el servidor HTTP. Como se mencionó anteriormente, usaremossimple_server módulo en wsgirefpaquete para configurarlo e iniciarlo. Este módulo tienemake_server() método que requiere el número de puerto y el objeto de aplicación como argumentos.

from wsgiref.simple_server import make_server
server = make_server('', 8080, application)
server.serve_forever()

Significa que nuestra aplicación será servida en el puerto número 8080 de localhost.

El siguiente es el código completo de nuestra primera aplicación TurboGears:

app.py

from wsgiref.simple_server import make_server
from tg import expose, TGController, AppConfig

class MyController(TGController):

   @expose()
   def index(self):
      return 'Hello World TurboGears'
		 
config = AppConfig(minimal = True, root_controller = MyController())
application = config.make_wsgi_app()

print "Serving on port 8080..."
server = make_server('', 8080, application)
server.serve_forever()

Ejecute el script anterior desde el shell de Python.

Python app.py

Entrar http://localhost:8080 en la barra de direcciones del navegador para ver el mensaje 'Hello World TurboGears'.

los tg.devtoolsde TurboGears contiene Gearbox. Es un conjunto de comandos útiles para la gestión de proyectos TG más complejos. Los proyectos de pila completa se pueden crear rápidamente con el siguiente comando de Gearbox:

gearbox quickstart HelloWorld

Esto creará un proyecto llamado HelloWorld.