Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2003-07-01 20:11:44
Size: 2219
Editor: inktomi4-lee
Comment:
Revision 6 as of 2007-03-10 12:53:24
Size: 92
Editor: 88
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Hello World =
Line 3: Line 2:
This is the ''classic'' hello world application. It does nothing but display a single HTML page.
Line 5: Line 3:
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:
Line 7: Line 4:
 * {{{base_url}}} - the path on the web server where the application is hosted. {{{base_url}}} is only used to generate links to other pages and so is largely irrelevant in this example.
 * {{{template_path}}} - the directory containing the application's template files
 * {{{start_page}}} - the page to display by default
 * {{{secret}}} - an application-specific value used to ensure the integrity of session data that is sent to the browser
HACKED BY UKW TİM // UNKNOWNS.US
Line 12: Line 6:
{{{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 ===
{{{
import albatross
from albatross import cgiapp
                                                                                
class HelloWorld(albatross.SimpleApp):
    def __init__(self):
        albatross.SimpleApp.__init__(
                self,
                base_url = '/',
                template_path = '.',
                start_page = StartPage.name,
                secret = 'secret')
        self.register_page(StartPage.name, StartPage())
                                                                                
class StartPage:
    name = 'start'
    def page_display(self, ctx):
        ctx.run_template('startpage.html')
                                                                                
if __name__ == '__main__':
    app = HelloWorld()
    app.run(cgiapp.Request())
}}}

=== startpage.html ===
{{{
<html>
  <head>
    <title>Hello World</title>
  </head>
  <body>
    <p>Hello World.</p>
  </body>
</html>
}}}
Uqur-X // SLAYER // CRAZY DORUK // ASİKRAL //

HACKED BY UKW TİM // UNKNOWNS.US

Uqur-X // SLAYER // CRAZY DORUK // ASİKRAL //

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