diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-09-09 17:21:35 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-09-09 17:21:35 +0200 |
commit | 510413f056de9a82c7cd75c3cca48d617245024d (patch) | |
tree | 3cf300c71ef8c7cd54b0ba8e3091acd1c1fc362c /ishtar_common/models.py | |
parent | 5e71ed7eb01b0a4e8625b5f76397582aef1ef4a0 (diff) | |
download | Ishtar-510413f056de9a82c7cd75c3cca48d617245024d.tar.bz2 Ishtar-510413f056de9a82c7cd75c3cca48d617245024d.zip |
Reactivate right cache (finger crossed)
Diffstat (limited to 'ishtar_common/models.py')
-rw-r--r-- | ishtar_common/models.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 29dedd113..e4a72eab7 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -2414,10 +2414,10 @@ class Person(Address, Merge, OwnPerms, ValueGetter): bool(self.person_types.filter( groups__permissions__codename=right_name).count()) or \ bool(self.ishtaruser.filter( - groups__permissions__codename__in=right_name + groups__permissions__codename__in=[right_name] ).count()) or\ bool(self.ishtaruser.filter( - user_permissions__codename__in=right_name).count()) + user_permissions__codename__in=[right_name]).count()) # or self.person_types.filter(wizard__url_name=right_name).count()) if session: cache.set(cache_key, res, settings.CACHE_SMALLTIMEOUT) @@ -2514,8 +2514,9 @@ class IshtarUser(User): def has_perm(self, perm, model=None, session=None, obj=None): if not session: return super(IshtarUser, self).has_perm(perm, model) - cache_key = 'usersession-{}-{}'.format(session.session_key, perm, - model or 'no') + cache_key = 'usersession-{}-{}-{}-{}'.format( + session.session_key, perm, model.__name__ if model else 'no', + obj.pk if obj else 'no') res = cache.get(cache_key) if res in (True, False): return res |