diff --git a/CHANGELOG b/CHANGELOG index 2a67c58db0..a3e1e2a55a 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,5 @@ +* Use write mode by default to check create and delete of resources + Version 5.0.0 - 2018-10-01 * Bug fixes (see mercurial logs for details) * Allow non translatable reports diff --git a/trytond/ir/resource.py b/trytond/ir/resource.py index 413f11b092..1b796dc82a 100644 --- a/trytond/ir/resource.py +++ b/trytond/ir/resource.py @@ -69,7 +69,14 @@ class ResourceMixin(ModelSQL, ModelView): if record.resource: model_names.add(str(record.resource).split(',')[0]) for model_name in model_names: - ModelAccess.check(model_name, mode=mode) + checks = cls._convert_check_access(model_name, mode) + for model, check_mode in checks: + ModelAccess.check(model, mode=check_mode) + + @classmethod + def _convert_check_access(cls, model, mode): + return [ + (model, {'create': 'write', 'delete': 'write'}.get(mode, mode))] @classmethod def read(cls, ids, fields_names=None):