Commit 8d51759d by Tom Christie

Fix bitbucket issue 39. All further issues should be on github

parent 2ebcc9d3
...@@ -9,6 +9,7 @@ Carles Barrobés <txels> - HEAD support. ...@@ -9,6 +9,7 @@ Carles Barrobés <txels> - HEAD support.
Michael Fötsch <mfoetsch> - File format support. Michael Fötsch <mfoetsch> - File format support.
David Larlet <david> - OAuth support. David Larlet <david> - OAuth support.
Andrew Straw <astraw> - Bugfixes. Andrew Straw <astraw> - Bugfixes.
<zeth> - Bugfixes.
THANKS TO: THANKS TO:
......
...@@ -6,7 +6,7 @@ To install django-rest-framework in a virtualenv environment ...@@ -6,7 +6,7 @@ To install django-rest-framework in a virtualenv environment
hg clone https://tomchristie@bitbucket.org/tomchristie/django-rest-framework hg clone https://tomchristie@bitbucket.org/tomchristie/django-rest-framework
cd django-rest-framework/ cd django-rest-framework/
virtualenv --no-site-packages --distribute --python=python2.6 env virtualenv --no-site-packages --distribute --python=python2.6 env
source ./env/bin/activate source env/bin/activate
pip install -r requirements.txt # django, coverage pip install -r requirements.txt # django, coverage
......
...@@ -4,7 +4,7 @@ Customizable serialization. ...@@ -4,7 +4,7 @@ Customizable serialization.
from django.db import models from django.db import models
from django.db.models.query import QuerySet from django.db.models.query import QuerySet
from django.db.models.fields.related import RelatedField from django.db.models.fields.related import RelatedField
from django.utils.encoding import smart_unicode, is_protected_type from django.utils.encoding import smart_unicode, is_protected_type, smart_str
import decimal import decimal
import inspect import inspect
...@@ -177,7 +177,7 @@ class Serializer(object): ...@@ -177,7 +177,7 @@ class Serializer(object):
Keys serialize to their string value, Keys serialize to their string value,
unless they exist in the `rename` dict. unless they exist in the `rename` dict.
""" """
return getattr(self.rename, key, key) return getattr(self.rename, smart_str(key), smart_str(key))
def serialize_val(self, key, obj): def serialize_val(self, key, obj):
...@@ -228,12 +228,12 @@ class Serializer(object): ...@@ -228,12 +228,12 @@ class Serializer(object):
# serialize each required field # serialize each required field
for fname in fields: for fname in fields:
if hasattr(self, fname): if hasattr(self, smart_str(fname)):
# check for a method 'fname' on self first # check for a method 'fname' on self first
meth = getattr(self, fname) meth = getattr(self, fname)
if inspect.ismethod(meth) and len(inspect.getargspec(meth)[0]) == 2: if inspect.ismethod(meth) and len(inspect.getargspec(meth)[0]) == 2:
obj = meth(instance) obj = meth(instance)
elif hasattr(instance, fname): elif hasattr(instance, smart_str(fname)):
# now check for an attribute 'fname' on the instance # now check for an attribute 'fname' on the instance
obj = getattr(instance, fname) obj = getattr(instance, fname)
elif fname in instance: elif fname in instance:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment