thirdparty/google_appengine/lib/django/tests/modeltests/str/models.py
author Todd Larsen <tlarsen@google.com>
Wed, 01 Oct 2008 00:41:18 +0000
changeset 222 63e5f42e2e83
parent 109 620f9b141567
permissions -rwxr-xr-x
Add lots of new functions to key_name.py, including path/link_name processing. Copy various link_name related regex patterns to key_name.py and use them. Add error checking that raises a key_name.Error exception when name...() functions are given empty arguments. Hard-code class names, since they match what was typed into the module.class.__name__ to get the name anyway. This eliminates dependencies on any modules by key_name.py.

"""
2. Adding __str__() to models

Although it's not a strict requirement, each model should have a ``__str__()``
method to return a "human-readable" representation of the object. Do this not
only for your own sanity when dealing with the interactive prompt, but also
because objects' representations are used throughout Django's
automatically-generated admin.
"""

from django.db import models

class Article(models.Model):
    headline = models.CharField(maxlength=100)
    pub_date = models.DateTimeField()

    def __str__(self):
        return self.headline

__test__ = {'API_TESTS':"""
# Create an Article.
>>> from datetime import datetime
>>> a = Article(headline='Area man programs in Python', pub_date=datetime(2005, 7, 28))
>>> a.save()

>>> str(a)
'Area man programs in Python'

>>> a
<Article: Area man programs in Python>
"""}