diff options
| author | Adrian Holovaty <adrian@holovaty.com> | 2007-06-07 21:49:06 +0000 |
|---|---|---|
| committer | Adrian Holovaty <adrian@holovaty.com> | 2007-06-07 21:49:06 +0000 |
| commit | d34639b09bf85dfb1b6f9a4b59f8ccbc3117230b (patch) | |
| tree | 619db1e6fde32bbfb0c135bde382d1b1df395e9a /django/core | |
| parent | 659d99b7afda730180e80ea4d68a7d505b21ba86 (diff) | |
newforms-admin: Merged to [5439]
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@5440 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django/core')
| -rw-r--r-- | django/core/context_processors.py | 7 | ||||
| -rw-r--r-- | django/core/management.py | 2 | ||||
| -rw-r--r-- | django/core/serializers/json.py | 2 | ||||
| -rw-r--r-- | django/core/serializers/python.py | 7 | ||||
| -rw-r--r-- | django/core/serializers/pyyaml.py | 2 | ||||
| -rw-r--r-- | django/core/serializers/xml_serializer.py | 8 |
6 files changed, 25 insertions, 3 deletions
diff --git a/django/core/context_processors.py b/django/core/context_processors.py index f4b288dfc4..3c826b1a7d 100644 --- a/django/core/context_processors.py +++ b/django/core/context_processors.py @@ -42,6 +42,13 @@ def i18n(request): return context_extras +def media(request): + """ + Adds media-related context variables to the context. + + """ + return {'MEDIA_URL': settings.MEDIA_URL} + def request(request): return {'request': request} diff --git a/django/core/management.py b/django/core/management.py index 26a06792b2..a273d275c1 100644 --- a/django/core/management.py +++ b/django/core/management.py @@ -1141,7 +1141,7 @@ def validate(outfile=sys.stdout, silent_success=False): return outfile.write('%s error%s found.\n' % (num_errors, num_errors != 1 and 's' or '')) except ImproperlyConfigured: - outfile.write("Skipping validation because things aren't configured properly.") + outfile.write("Skipping validation because things aren't configured properly.\n") validate.args = '' def _check_for_validation_errors(app=None): diff --git a/django/core/serializers/json.py b/django/core/serializers/json.py index 55804b8316..fa2dca7295 100644 --- a/django/core/serializers/json.py +++ b/django/core/serializers/json.py @@ -21,6 +21,8 @@ class Serializer(PythonSerializer): Convert a queryset to JSON. """ def end_serialization(self): + self.options.pop('stream', None) + self.options.pop('fields', None) simplejson.dump(self.objects, self.stream, cls=DjangoJSONEncoder, **self.options) def getvalue(self): diff --git a/django/core/serializers/python.py b/django/core/serializers/python.py index 66dbbff335..5fbb3163f7 100644 --- a/django/core/serializers/python.py +++ b/django/core/serializers/python.py @@ -37,7 +37,12 @@ class Serializer(base.Serializer): def handle_fk_field(self, obj, field): related = getattr(obj, field.name) if related is not None: - related = getattr(related, field.rel.field_name) + if field.rel.field_name == related._meta.pk.name: + # Related to remote object via primary key + related = related._get_pk_val() + else: + # Related to remote object via other field + related = getattr(related, field.rel.field_name) self._current[field.name] = related def handle_m2m_field(self, obj, field): diff --git a/django/core/serializers/pyyaml.py b/django/core/serializers/pyyaml.py index fa3dec984e..d3444280c5 100644 --- a/django/core/serializers/pyyaml.py +++ b/django/core/serializers/pyyaml.py @@ -18,6 +18,8 @@ class Serializer(PythonSerializer): Convert a queryset to YAML. """ def end_serialization(self): + self.options.pop('stream', None) + self.options.pop('fields', None) yaml.dump(self.objects, self.stream, **self.options) def getvalue(self): diff --git a/django/core/serializers/xml_serializer.py b/django/core/serializers/xml_serializer.py index 633001f5f0..3e4a6f3e79 100644 --- a/django/core/serializers/xml_serializer.py +++ b/django/core/serializers/xml_serializer.py @@ -82,7 +82,13 @@ class Serializer(base.Serializer): self._start_relational_field(field) related = getattr(obj, field.name) if related is not None: - self.xml.characters(str(getattr(related, field.rel.field_name))) + if field.rel.field_name == related._meta.pk.name: + # Related to remote object via primary key + related = related._get_pk_val() + else: + # Related to remote object via other field + related = getattr(related, field.rel.field_name) + self.xml.characters(str(related)) else: self.xml.addQuickElement("None") self.xml.endElement("field") |
