TypeError: UUID('2xxxxx') is not JSON serializable, at autocomplete widget

102 views
Skip to first unread message

Florian Supper

unread,
May 29, 2016, 6:18:01 AM5/29/16
to django-selectable
Hi,

i've got an Type Error, when i type in some values in the form field..

Model:
class Contacts(models.Model):
    id               = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    first_name = models.CharField(max_length=100, blank=True)
    last_name = models.CharField(max_length=100)
    email          = models.EmailField(max_length=255, unique=True)


form.py
from dal import autocomplete

class ContactAutocomplete(autocomplete.Select2QuerySetView):
    def get_queryset(self):
        qs = Contacts.objects.all()
        if self.q:
            qs = qs.filter(email__istartswith=self.q)


class TestModel(ModelForm):
    main_contacts   = forms.ModelChoiceField(queryset=Contacts.objects.filter(active__iexact=1),
                                                 widget=autocomplete.ModelSelect2(url='contact-autocomplete'))
    class Meta:
        model   = Testing



If i Type some value in the form field in my rendered template, i got the following error:

[29/May/2016 12:07:15] "GET /pki_management_tool/contact-autocomplete/?q=pk HTTP/1.1" 500 14782
----------------
[<Contacts: HANSMAN - han...@example.com>, <Contacts: LALA - la...@example.com>]
----------------
Internal Server Error: /testing_tool/contact-autocomplete/
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py", line 149, in get_response
    response = self.process_exception_by_middleware(e, request)
  File "/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py", line 147, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/local/lib/python3.5/site-packages/django/views/generic/base.py", line 68, in view
    return self.dispatch(request, *args, **kwargs)
  File "/usr/local/lib/python3.5/site-packages/dal/views.py", line 30, in dispatch
    return super(ViewMixin, self).dispatch(request, *args, **kwargs)
  File "/usr/local/lib/python3.5/site-packages/django/views/generic/base.py", line 88, in dispatch
    return handler(request, *args, **kwargs)
  File "/usr/local/lib/python3.5/site-packages/django/views/generic/list.py", line 175, in get
    return self.render_to_response(context)
  File "/usr/local/lib/python3.5/site-packages/dal_select2/views.py", line 38, in render_to_response
    'more': self.has_more(context)
  File "/usr/local/Cellar/python3/3.5.1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/json/__init__.py", line 230, in dumps
    return _default_encoder.encode(obj)
  File "/usr/local/Cellar/python3/3.5.1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/json/encoder.py", line 199, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "/usr/local/Cellar/python3/3.5.1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/json/encoder.py", line 257, in iterencode
    return _iterencode(o, 0)
  File "/usr/local/Cellar/python3/3.5.1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/json/encoder.py", line 180, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: UUID('26xxxxxx') is not JSON serializable

Can anyone help me?

Thanks.

BR
Florian

Reply all
Reply to author
Forward
0 new messages