Hello World

An Albatross version of the classic (ahem) hello world application.

Purpose

To demonstrate:

Overview

The HelloWorld class simply initialises its base class, Albatross's prepackaged SimpleApp, and then registers the only page in the application, StartPage. The parameters passed to the SimpleApp constructor are:

StartPage contains only one method, page_display, that tells Albatross to render the template file startpage.html.

Although it is not essential in this application (since there is only one page) it is customary for each page class to contain a class variable called name which uniquely identifes the page. The page's name is used in links.

Source Code

helloworld.py

   1 import albatross
   2 from albatross import cgiapp
   3                                                                                 
   4 class HelloWorld(albatross.SimpleApp):
   5     def __init__(self):
   6         albatross.SimpleApp.__init__(
   7                 self,
   8                 base_url = '/',
   9                 template_path = '.',
  10                 start_page = StartPage.name,
  11                 secret = 'secret')
  12         self.register_page(StartPage.name, StartPage())
  13                                                                                 
  14 class StartPage:
  15     name = 'start'
  16     def page_display(self, ctx):
  17         ctx.run_template('startpage.html')
  18                                                                                 
  19 if __name__ == '__main__':
  20     app = HelloWorld()
  21     app.run(cgiapp.Request())

startpage.html

<html>
  <head>
    <title>Hello World</title>
  </head>
  <body>
    <p>Hello World.</p>
  </body>
</html>

None: HelloWorld (last edited 2011-02-15 06:05:17 by localhost)