Hello,
I'm using a custom model inherit from AbstractBaseUser and PermissionMixin, which use phone number as primary key. when I trying to use the your module, like:
CustomRole.assign_role_to_user(custom_user) , I got errors:
File "/usr/local/lib/python2.7/dist-packages/rolepermissions/roles.py", line 68, in assign_role_to_user
permissions_to_add = cls.get_default_true_permissions()
File "/usr/local/lib/python2.7/dist-packages/rolepermissions/roles.py", line 83, in get_default_true_permissions
return cls.get_or_create_permissions(permission_names)
File "/usr/local/lib/python2.7/dist-packages/rolepermissions/roles.py", line 96, in get_or_create_permissions
content_type=user_ct, codename=permission_name)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(_args, *_kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 407, in get_or_create
return self._create_object_from_params(lookup, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 447, in _create_object_from_params
six.reraise(_exc_info)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 439, in _create_object_from_params
obj = self.create(__params)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
obj.save(force_insert=True, using=self.db)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
force_update=force_update, update_fields=update_fields)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
using=using, raw=raw)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(_args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 920, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 974, in execute_sql
cursor.execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 97, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
IntegrityError: duplicate key value violates unique constraint "auth_permission_pkey"
DETAIL: Key (id)=(1) already exists.
from my prosgresql log:
2015-09-03 17:32:26 CST [12080-1] aaa@bbb ERROR: duplicate key value violates unique constraint "auth_permission_pkey"
2015-09-03 17:32:26 CST [12080-2] aaa@bbb DETAIL: Key (id)=(1) already exists.
2015-09-03 17:32:26 CST [12080-3] aaa@bbb STATEMENT: INSERT INTO "auth_permission" ("name", "content_type_id", "codename") VALUES ('', 7, 'create_booking') RETURNING "auth_permission"."id"
Any idea about what's the problem?
cheers,