Use 'irrulecontext' to add 'user_id' to context of ir.rule

This commit is contained in:
Frederik Jaeckel 2024-07-19 15:41:25 +02:00
parent 6aca58bcc2
commit 08d8121f57
3 changed files with 9 additions and 19 deletions

25
ir.py
View file

@ -3,7 +3,6 @@
# The COPYRIGHT file at the top level of this repository contains the # The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms. # full copyright notices and license terms.
from trytond.transaction import Transaction
from trytond.pool import PoolMeta from trytond.pool import PoolMeta
@ -14,22 +13,12 @@ class Rule(metaclass=PoolMeta):
def _context_modelnames(cls): def _context_modelnames(cls):
""" list of models to add 'user_id' to context """ list of models to add 'user_id' to context
""" """
return [ result = super(Rule, cls)._context_modelnames()
'cashbook.book', 'cashbook.line', 'cashbook.recon', return result | {
'cashbook.split'] 'cashbook.book',
'cashbook.line',
@classmethod 'cashbook.recon',
def _get_context(cls, model_name): 'cashbook.split'
context = super()._get_context(model_name) }
if model_name in cls._context_modelnames():
context['user_id'] = Transaction().user
return context
@classmethod
def _get_cache_key(cls, model_name):
key = super()._get_cache_key(model_name)
if model_name in cls._context_modelnames():
key = (*key, Transaction().user)
return key
# end Rule # end Rule

View file

@ -5,6 +5,7 @@ depends:
currency currency
party party
company company
irrulecontext
xml: xml:
icon.xml icon.xml
group.xml group.xml

View file

@ -1 +1 @@
irrulecontext;7.0.1;7.0.999;mds