I have been going through your tutorial lately and noticed a change from the use of str() to unicode() and read the new block with the text below:
Why unicode() and not str()?
If you’re familiar with Python, you might be in the habit of adding str() methods to your classes, not unicode() methods.
System Message: WARNING/2 (<string>, line 499)
Block quote ends without a blank line; unexpected unindent.
We use unicode() here because Django models deal with Unicode by default. All data stored in your database is converted to Unicode when it’s returned.
Since the System Message listed above doesn't seem to be explained, I didn't think that it was the reason for a switch from str() to unicode(), but that there was something you had meant to include that had a problem.
I'm really impressed with Django - keep up the good work!