Use default access for ModelSQL based on table_query when method is extended
When the create/write/delete methods are extended, we should assume that developer has implemented such access. Closes #12757
This commit is contained in:
@@ -571,7 +571,13 @@ class ModelAccess(DeactivableMixin, ModelSQL, ModelView):
|
||||
for model in models:
|
||||
Model = pool.get(model)
|
||||
if callable(getattr(Model, 'table_query', None)):
|
||||
access[model] = default_table_query
|
||||
maccess = access[model] = default_table_query.copy()
|
||||
if Model.create != ModelSQL.create:
|
||||
maccess['create'] = default['create']
|
||||
if Model.write != ModelSQL.write:
|
||||
maccess['write'] = default['write']
|
||||
if Model.delete != ModelSQL.delete:
|
||||
maccess['delete'] = default['delete']
|
||||
elif issubclass(Model, ModelSingleton):
|
||||
access[model] = default_singleton
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user