#12647: Django admin unique validation fails
----------------------------------+-----------------------------------------
Reporter: jtiai | Owner: nobody
Status: new | Milestone:
Component: django.contrib.admin | Version: 1.2-alpha
Keywords: | Stage: Unreviewed
Has_patch: 0 |
----------------------------------+-----------------------------------------
If Model Meta has unique_together set as sequence admin view fails. If
unique_together is tuple admin works as expected.
Traceback:
{{{
#!python
Traceback (most recent call last):
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/core/servers/basehttp.py", line 672, in __call__
return self.application(environ, start_response)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/core/handlers/wsgi.py", line 241, in __call__
response = self.get_response(request)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/core/handlers/base.py", line 143, in get_response
return self.handle_uncaught_exception(request, resolver, exc_info)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/core/handlers/base.py", line 167, in
handle_uncaught_exception
return debug.technical_500_response(request, *exc_info)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/core/handlers/base.py", line 101, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/contrib/admin/options.py", line 238, in wrapper
return self.admin_site.admin_view(view)(*args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/utils/decorators.py", line 36, in __call__
return self.decorator(self.func)(*args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/utils/decorators.py", line 86, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/utils/decorators.py", line 36, in __call__
return self.decorator(self.func)(*args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/views/decorators/cache.py", line 70, in _wrapped_view_func
response = view_func(request, *args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/contrib/admin/sites.py", line 190, in inner
return view(request, *args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/utils/decorators.py", line 86, in _wrapped_view
response = view_func(request, *args, **kwargs)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/db/transaction.py", line 295, in _commit_on_success
res = func(*args, **kw)
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/contrib/admin/options.py", line 882, in change_view
if all_valid(formsets) and form_validated:
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/formsets.py", line 317, in all_valid
if not formset.is_valid():
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/formsets.py", line 238, in is_valid
if bool(self.errors[i]):
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/formsets.py", line 212, in _get_errors
self.full_clean()
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/formsets.py", line 254, in full_clean
self.clean()
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/models.py", line 432, in clean
self.validate_unique()
File "/home/KEYPRO/jtiai/src/django-workspaces/netreg/django-
trunk/django/forms/models.py", line 443, in validate_unique
all_unique_checks = all_unique_checks.union(set(unique_checks))
TypeError: unhashable type: 'list'
>>> unique_checks
[['ssp_category', 'email_type']]
}}}
--
Ticket URL: <http://code.djangoproject.com/ticket/12647>
Django <http://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en.