TurboGears - Premier programme

TurboGears dispose d'un mode minimal qui permet de créer rapidement des applications à un seul fichier. Des exemples et des services simples peuvent être créés rapidement avec un ensemble minimal de dépendances.

La classe d'application dans une application TG est héritée de TGControllerclasse. Les méthodes de cette classe sont accessibles par@expose décorateur de tgmodule. Dans notre première application,index()méthode est mappée en tant que racine de notre application. La classe TGController doit également être importée depuistg module.

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

Ensuite, définissez la configuration de l'application et déclarez l'objet d'application. AppConfig Le constructeur de classe prend ici deux paramètres - l'attribut minimal défini sur true et la classe du contrôleur.

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

le make_wsgi_app() function construit ici l'objet d'application.

Afin de servir cette application, nous devons maintenant démarrer le serveur HTTP. Comme mentionné précédemment, nous utiliseronssimple_server module dans wsgirefpackage pour le configurer et le démarrer. Ce module amake_server() méthode qui requiert le numéro de port et l'objet d'application comme arguments.

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

Cela signifie que notre application sera servie au numéro de port 8080 de localhost.

Ce qui suit est le code complet de notre première application 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()

Exécutez le script ci-dessus à partir du shell Python.

Python app.py

Entrer http://localhost:8080 dans la barre d'adresse du navigateur pour afficher le message «Hello World TurboGears».

le tg.devtoolsde TurboGears contient Gearbox. Il s'agit d'un ensemble de commandes utiles pour la gestion de projets TG plus complexes. Les projets de pile complète peuvent être rapidement créés par la commande Gearbox suivante -

gearbox quickstart HelloWorld

Cela créera un projet appelé HelloWorld.