﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
20044	DatabaseError at /admin/: custom user model with UUID PK	Alexander Ovchinnikov	nobody	"I use Django 1.5 with custom user model  and uuid as primary key, 
{{{
uuid = UUIDField(version=1, auto=True, primary_key=True)
}}}
 When staff user try to login (and if he/she is not superadmin) - database error:

{{{
DatabaseError at /admin/
operator does not exist: uuid = numeric
LINE 1: ....""id"") WHERE ""itresumebase_user_groups"".""user_id"" = 32316155...
                                                             ^
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
}}}

My Postgres log, sudo cat postgresql-9.1-main.log:

{{{
...
...
2013-03-14 00:07:10 UTC ERROR:  current transaction is aborted, commands ignored until end of transaction block
2013-03-14 00:07:10 UTC STATEMENT:  SELECT ""django_content_type"".""app_label"", ""auth_permission"".""codename"" FROM ""auth_permission"" 
INNER JOIN ""auth_group_permissions"" ON (""auth_permission"".""id"" = ""auth_group_permissions"".""permission_id"") 
INNER JOIN ""auth_group"" ON (""auth_group_permissions"".""group_id"" = ""auth_group"".""id"") 
INNER JOIN ""itresumebase_user_groups"" ON (""auth_group"".""id"" = ""itresumebase_user_groups"".""group_id"") 
INNER JOIN ""django_content_type"" ON (""auth_permission"".""content_type_id"" = ""django_content_type"".""id"") 
WHERE ""itresumebase_user_groups"".""user_id"" = 32316155710099430392310223565998026040  LIMIT 21
}}}

32316155710099430392310223565998026040 ? What is it? User uuid is '184fdd7d-8c37-11e2-bb51-002241246d38'...


{{{

Environment:


Request Method: GET
Request URL: http://it-resume.ru:8000/admin/

Django Version: 1.5
Python Version: 2.7.3
Installed Applications:
(u'cities_light',
 u'django.contrib.auth',
 u'django.contrib.contenttypes',
 u'django.contrib.sessions',
 u'django.contrib.sites',
 u'django.contrib.messages',
 u'django.contrib.staticfiles',
 u'django.contrib.admin',
 u'django.contrib.admindocs',
 u'redactor',
 u'itresumebase',
 u'south',
 u'autocomplete_light',
 u'guardian',
 u'social_auth')
Installed Middleware:
(u'django.middleware.common.CommonMiddleware',
 u'django.contrib.sessions.middleware.SessionMiddleware',
 u'django.middleware.csrf.CsrfViewMiddleware',
 u'django.contrib.auth.middleware.AuthenticationMiddleware',
 u'django.contrib.messages.middleware.MessageMiddleware')


Traceback:
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/core/handlers/base.py"" in get_response
  115.                         response = callback(request, *callback_args, **callback_kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/admin/sites.py"" in wrapper
  219.                 return self.admin_view(view, cacheable)(*args, **kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/utils/decorators.py"" in _wrapped_view
  91.                     response = view_func(request, *args, **kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/views/decorators/cache.py"" in _wrapped_view_func
  89.         response = view_func(request, *args, **kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/admin/sites.py"" in inner
  202.             return view(request, *args, **kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/views/decorators/cache.py"" in _wrapped_view_func
  89.         response = view_func(request, *args, **kwargs)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/admin/sites.py"" in index
  346.             has_module_perms = user.has_module_perms(app_label)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/auth/models.py"" in has_module_perms
  367.         return _user_has_module_perms(self, app_label)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/auth/models.py"" in _user_has_module_perms
  288.             if backend.has_module_perms(user, app_label):
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/auth/backends.py"" in has_module_perms
  59.         for perm in self.get_all_permissions(user_obj):
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/auth/backends.py"" in get_all_permissions
  45.             user_obj._perm_cache.update(self.get_group_permissions(user_obj))
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/contrib/auth/backends.py"" in get_group_permissions
  37.             user_obj._group_perm_cache = set([""%s.%s"" % (ct, name) for ct, name in perms])
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/query.py"" in _result_iter
  123.                 self._fill_cache()
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/query.py"" in _fill_cache
  939.                     self._result_cache.append(next(self._iter))
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/query.py"" in _safe_iterator
  344.             for item in iterator:
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/query.py"" in iterator
  1141.             for row in self.query.get_compiler(self.db).results_iter():
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/sql/compiler.py"" in results_iter
  775.         for rows in self.execute_sql(MULTI):
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/models/sql/compiler.py"" in execute_sql
  840.         cursor.execute(sql, params)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/backends/util.py"" in execute
  41.             return self.cursor.execute(sql, params)
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py"" in execute
  58.             six.reraise(utils.DatabaseError, utils.DatabaseError(*tuple(e.args)), sys.exc_info()[2])
File ""/Users/lorddaedra/Envs/itresume/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py"" in execute
  54.             return self.cursor.execute(query, args)

Exception Type: DatabaseError at /admin/
Exception Value: operator does not exist: uuid = numeric
LINE 1: ....""id"") WHERE ""itresumebase_user_groups"".""user_id"" = 32316155...
                                                             ^
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.


}}}

"	Bug	closed	contrib.admin	1.5	Normal	invalid	admin, user, uuid		Unreviewed	0	0	0	0	0	0
