Fixes AC-472. Workaround for django-taggit breaking dumpdata command.

This commit is contained in:
Chris Church
2013-09-13 16:22:15 -04:00
parent ac7c300948
commit 4b5620806c
2 changed files with 28 additions and 1 deletions

View File

@@ -1868,5 +1868,17 @@ from awx.main.access import *
User.add_to_class('get_queryset', get_user_queryset)
User.add_to_class('can_access', check_user_access)
# Monkeypatch Django serializer to ignore django-taggit fields (which break
# the dumpdata command; see https://github.com/alex/django-taggit/issues/155).
from django.core.serializers.python import Serializer as _PythonSerializer
_original_handle_m2m_field = _PythonSerializer.handle_m2m_field
def _new_handle_m2m_field(self, obj, field):
try:
field.rel.through._meta
except AttributeError:
return
return _original_handle_m2m_field(self, obj, field)
_PythonSerializer.handle_m2m_field = _new_handle_m2m_field
# Import signal handlers only after models have been defined.
import awx.main.signals