Are you a fan of Web2py because it comes packed with nice included templates to get you started quickly? I for one love the effects for when messages in web2py, where they fade in and out elegantly. This functionality is easily done using Django and it's template system. I am not placing this in the tutorials section, as this is a rather simple example to get people started, rather than a full-on tutorial.
First, you will need a base template for your website which will in charge of displaying these jQuery message affects. It will use the Django messages framework, so everything will come together nicely from any plugable Django apps you may have, including the admin app.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><head>
..... SNIP .....
<script type="text/javascript" src="/js/jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(function(){
$('#messages').click(function(event){
$('#messages').fadeOut();
});
$('#messages').hide();
{% if messages %}
{% for message in messages %}
$('#messages').append('<div>{{message}}</div>');
{% endfor %}
$('#messages').fadeIn();
{% endif %}
</script>
...
</head><body>
...
<div id="messages"></div>
...
</body></html>
This is just one way of doing this, you could read and output the messages in the body part of the template, but I like to keep all the code together. My actual implementation uses jQueryUI rather than standard jQuery, and uses other animations and jQueryUI's CSS to make it look really slick. This can be done in any template language, but the example above is specific for Django. Each web framework will have it's own method of retrieving the messages from the stack.
Django should ship with a set of default templates, as this is where web2py shines when it comes to getting started right away. I prefer to work on the backend Python code before having to deal with the HTML/CSS/JS files. Django not having a set of default templates for forms, CRUD, and the various included frameworks makes working with Django initially very tedious. Once a Django site has it's templates built, I find adding and extending the site to be a breeze, the only problem for me is getting the template ready before I can actually begin work... Django has a really awesome template system which supports overriding templates with zero effort, and it should be a no brainer to include some sort of default template set to get Python programmers up and running faster.
