[IMP] all: Improve res.config perf on method execute
Purpose ======= Several actions are done even if nothing has changed on the configuration. Example: Writing on a cron the same value makes a dummy write-lock on the table ... Part-of: odoo/odoo#82999
This commit is contained in:
@@ -1,12 +1,8 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
import logging
|
||||
|
||||
from odoo import api, fields, models
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class ResConfigSettings(models.TransientModel):
|
||||
_inherit = 'res.config.settings'
|
||||
@@ -23,17 +19,18 @@ class ResConfigSettings(models.TransientModel):
|
||||
def get_values(self):
|
||||
res = super(ResConfigSettings, self).get_values()
|
||||
google_provider = self.env.ref('auth_oauth.provider_google', False)
|
||||
google_provider and res.update(
|
||||
auth_oauth_google_enabled=google_provider.enabled,
|
||||
auth_oauth_google_client_id=google_provider.client_id,
|
||||
server_uri_google=self.get_uri(),
|
||||
)
|
||||
if google_provider:
|
||||
res.update(
|
||||
auth_oauth_google_enabled=google_provider.enabled,
|
||||
auth_oauth_google_client_id=google_provider.client_id,
|
||||
server_uri_google=self.get_uri())
|
||||
return res
|
||||
|
||||
def set_values(self):
|
||||
super(ResConfigSettings, self).set_values()
|
||||
super().set_values()
|
||||
google_provider = self.env.ref('auth_oauth.provider_google', False)
|
||||
google_provider and google_provider.write({
|
||||
'enabled': self.auth_oauth_google_enabled,
|
||||
'client_id': self.auth_oauth_google_client_id,
|
||||
})
|
||||
if google_provider:
|
||||
google_provider.write({
|
||||
'enabled': self.auth_oauth_google_enabled,
|
||||
'client_id': self.auth_oauth_google_client_id,
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user