mirror of https://github.com/django/django.git
Fixed #3036 -- Fixed some doctest strings that were failing. Thanks to pterk for the original patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6268 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
671a8359e8
commit
84e824fbbf
|
@ -3,9 +3,9 @@ Interfaces for serializing Django objects.
|
|||
|
||||
Usage::
|
||||
|
||||
>>> from django.core import serializers
|
||||
>>> json = serializers.serialize("json", some_query_set)
|
||||
>>> objects = list(serializers.deserialize("json", json))
|
||||
from django.core import serializers
|
||||
json = serializers.serialize("json", some_query_set)
|
||||
objects = list(serializers.deserialize("json", json))
|
||||
|
||||
To add your own serializers, use the SERIALIZATION_MODULES setting::
|
||||
|
||||
|
|
|
@ -405,12 +405,17 @@ class NumberIsInRange(object):
|
|||
|
||||
class IsAPowerOf(object):
|
||||
"""
|
||||
>>> v = IsAPowerOf(2)
|
||||
>>> v(4, None)
|
||||
>>> v(8, None)
|
||||
>>> v(16, None)
|
||||
>>> v(17, None)
|
||||
django.core.validators.ValidationError: ['This value must be a power of 2.']
|
||||
Usage: If you create an instance of the IsPowerOf validator:
|
||||
v = IsAPowerOf(2)
|
||||
|
||||
The following calls will succeed:
|
||||
v(4, None)
|
||||
v(8, None)
|
||||
v(16, None)
|
||||
|
||||
But this call:
|
||||
v(17, None)
|
||||
will raise "django.core.validators.ValidationError: ['This value must be a power of 2.']"
|
||||
"""
|
||||
def __init__(self, power_of):
|
||||
self.power_of = power_of
|
||||
|
|
|
@ -34,14 +34,8 @@ will be raised if the template doesn't have proper syntax.
|
|||
|
||||
Sample code:
|
||||
|
||||
>>> import template
|
||||
>>> s = '''
|
||||
... <html>
|
||||
... {% if test %}
|
||||
... <h1>{{ varvalue }}</h1>
|
||||
... {% endif %}
|
||||
... </html>
|
||||
... '''
|
||||
>>> from django import template
|
||||
>>> s = u'<html>{% if test %}<h1>{{ varvalue }}</h1>{% endif %}</html>'
|
||||
>>> t = template.Template(s)
|
||||
|
||||
(t is now a compiled template, and its render() method can be called multiple
|
||||
|
@ -49,10 +43,10 @@ times with multiple contexts)
|
|||
|
||||
>>> c = template.Context({'test':True, 'varvalue': 'Hello'})
|
||||
>>> t.render(c)
|
||||
'\n<html>\n\n <h1>Hello</h1>\n\n</html>\n'
|
||||
u'<html><h1>Hello</h1></html>'
|
||||
>>> c = template.Context({'test':False, 'varvalue': 'Hello'})
|
||||
>>> t.render(c)
|
||||
'\n<html>\n\n</html>\n'
|
||||
u'<html></html>'
|
||||
"""
|
||||
import re
|
||||
from inspect import getargspec
|
||||
|
@ -529,10 +523,11 @@ class FilterExpression(object):
|
|||
and return a list of tuples of the filter name and arguments.
|
||||
Sample:
|
||||
>>> token = 'variable|default:"Default value"|date:"Y-m-d"'
|
||||
>>> p = FilterParser(token)
|
||||
>>> p.filters
|
||||
[('default', 'Default value'), ('date', 'Y-m-d')]
|
||||
>>> p.var
|
||||
>>> p = Parser('')
|
||||
>>> fe = FilterExpression(token, p)
|
||||
>>> len(fe.filters)
|
||||
2
|
||||
>>> fe.var
|
||||
'variable'
|
||||
|
||||
This class should never be instantiated outside of the
|
||||
|
@ -647,7 +642,7 @@ def resolve_variable(path, context):
|
|||
|
||||
>>> c = {'article': {'section':'News'}}
|
||||
>>> resolve_variable('article.section', c)
|
||||
'News'
|
||||
u'News'
|
||||
>>> resolve_variable('article', c)
|
||||
{'section': 'News'}
|
||||
>>> class AClass: pass
|
||||
|
@ -655,7 +650,7 @@ def resolve_variable(path, context):
|
|||
>>> c.article = AClass()
|
||||
>>> c.article.section = 'News'
|
||||
>>> resolve_variable('article.section', c)
|
||||
'News'
|
||||
u'News'
|
||||
|
||||
(The example assumes VARIABLE_ATTRIBUTE_SEPARATOR is '.')
|
||||
"""
|
||||
|
|
|
@ -238,22 +238,20 @@ class DotExpandedDict(dict):
|
|||
may contain dots to specify inner dictionaries. It's confusing, but this
|
||||
example should make sense.
|
||||
|
||||
>>> d = DotExpandedDict({'person.1.firstname': ['Simon'],
|
||||
'person.1.lastname': ['Willison'],
|
||||
'person.2.firstname': ['Adrian'],
|
||||
>>> d = DotExpandedDict({'person.1.firstname': ['Simon'], \
|
||||
'person.1.lastname': ['Willison'], \
|
||||
'person.2.firstname': ['Adrian'], \
|
||||
'person.2.lastname': ['Holovaty']})
|
||||
>>> d
|
||||
{'person': {'1': {'lastname': ['Willison'], 'firstname': ['Simon']},
|
||||
'2': {'lastname': ['Holovaty'], 'firstname': ['Adrian']}}}
|
||||
{'person': {'1': {'lastname': ['Willison'], 'firstname': ['Simon']}, '2': {'lastname': ['Holovaty'], 'firstname': ['Adrian']}}}
|
||||
>>> d['person']
|
||||
{'1': {'firstname': ['Simon'], 'lastname': ['Willison'],
|
||||
'2': {'firstname': ['Adrian'], 'lastname': ['Holovaty']}
|
||||
{'1': {'lastname': ['Willison'], 'firstname': ['Simon']}, '2': {'lastname': ['Holovaty'], 'firstname': ['Adrian']}}
|
||||
>>> d['person']['1']
|
||||
{'firstname': ['Simon'], 'lastname': ['Willison']}
|
||||
{'lastname': ['Willison'], 'firstname': ['Simon']}
|
||||
|
||||
# Gotcha: Results are unpredictable if the dots are "uneven":
|
||||
>>> DotExpandedDict({'c.1': 2, 'c.2': 3, 'c': 1})
|
||||
>>> {'c': 1}
|
||||
{'c': 1}
|
||||
"""
|
||||
def __init__(self, key_to_list_mapping):
|
||||
for k, v in key_to_list_mapping.items():
|
||||
|
|
|
@ -3,6 +3,7 @@ Syndication feed generation library -- used for generating RSS, etc.
|
|||
|
||||
Sample usage:
|
||||
|
||||
>>> from django.utils import feedgenerator
|
||||
>>> feed = feedgenerator.Rss201rev2Feed(
|
||||
... title=u"Poynter E-Media Tidbits",
|
||||
... link=u"http://www.poynter.org/column.asp?id=31",
|
||||
|
|
Loading…
Reference in New Issue