Dan Perl: > The application is just something I'm playing with to learn a little bit on > web apps. It uses an HTML form to send an email. The form takes inputs > like the From:, To: and Subject: fields and a text field.
It is difficult to beat CGI + CGIHTTPServer for conceptual simplificity and easy of use: however, Quixote comes close and it has a *much* better support for forms. Here is an example from the minidemo in the distribution, so you have an idea of how the code looks like: > from quixote.publish import Publisher > from quixote.directory import Directory > class RootDirectory(Directory): > _q_exports = ['', 'hello'] > def _q_index(self): > return '''<html> > <body>Welcome to the Quixote demo. Here is a > <a href="hello">link</a>. > </body> > </html> > ''' > def hello(self): > return '<html><body>Hello world!</body></html>' > def create_publisher(): > return Publisher(RootDirectory(), > display_exceptions='plain') > if __name__ == '__main__': > from quixote.server.simple_server import run > print 'creating demo listening on http://localhost:8080/' > run(create_publisher, host='localhost', port=8080) The exported methods of your directory class corresponds to Web pages; _q_index returns the main page, hello an hello word page. This works out of the box with no configuration at all, you don't need to create a cgi-bin directory, nothing. It is trivial to replace simple_server with a more serious server (twisted_server, scgi_server, etc. ) Notice: this example works in Quixote 2.0 which is currently in alpha. Don't let the "alpha" scares you: that means that the documentation is still a bit rough and few things are not fully settled down, but the framework is very much usable. Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list