funkybob/django-nap — pull request #19 by ioneyed (2013-07-24 05:05:12+00:00)
Title: Ported to 3.x

I ported this over to 3.x and included maintainability with 2.x - To continue maintainability on both versions some things to keep in mind.

_This has been tested in_ __2.7.4__ _and_ __3.3.2__ _on Django_ __1.4/1.5__.

Do not use b"" or u"" as from __future__ import unicode_literals handles it.
```python
helper_text = b'ByteCode' #Futures will handle this
helper_text = u'UnicodeText' #Futures will handle this
helper_text = 'HelperText' #This keeps it maintainable in both versions.
```
Do not use __metaclass__ - in Class declaration use six.with_metaclass(Meta,Base)
```python
class ModelSerialiser(with_metaclass(MetaModelSerialiser,Serialiser)):
```

Use six.string_types instead of basestring
Wrap list with list() in for loops that utilize *.items:
```python
for key, val in list(obj.items()):
```