schema.py
changeset 5707 3586d36d2a45
parent 5558 afd1face1faf
parent 5703 24ca7615379b
child 5752 b0bb553e3be4
equal deleted inserted replaced
5705:30b94973bc67 5707:3586d36d2a45
   850             try:
   850             try:
   851                 return session.local_perm_cache[key]
   851                 return session.local_perm_cache[key]
   852             except KeyError:
   852             except KeyError:
   853                 pass
   853                 pass
   854         rql, has_perm_defs, keyarg = self.transform_has_permission()
   854         rql, has_perm_defs, keyarg = self.transform_has_permission()
   855         if creating:
   855         # when creating an entity, expression related to X satisfied
   856             # when creating an entity, consider has_*_permission satisfied
   856         if creating and 'X' in self.rqlst.defined_vars:
   857             if has_perm_defs:
   857             return True
   858                 return True
       
   859             return False
       
   860         if keyarg is None:
   858         if keyarg is None:
   861             kwargs.setdefault('u', session.user.eid)
   859             kwargs.setdefault('u', session.user.eid)
   862             try:
   860             try:
   863                 rset = session.execute(rql, kwargs, build_descr=True)
   861                 rset = session.execute(rql, kwargs, build_descr=True)
   864             except NotImplementedError:
   862             except NotImplementedError: