[IMP] base: avoid unnecessary exists in Contact HTML formatter
Protactively checking exists() seems unnecessary, it's likely that the widget would be called on an empty recordset but seems very unlikely that it'll be called on a missing record. The commit which added the exists() call performs significant refactoring/rewrite and doesn't explain why this exists() call would be useful. Since exists is not cached and qweb field converters are not batched, saves a large number of queries when formatting a series of addresses e.g. with 99 hr.job, /jobs goes from ~170 queries and ~100ms spent in SQL to ~70 queries and ~60ms spent in SQL. Though the total performance improvement is very limited as even with odoo/odoo#32985 the endpoint takes ~700ms (with the aforementioned 99 hr.job visible to the current user). closes odoo/odoo#32986 Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
This commit is contained in:
@@ -637,7 +637,7 @@ class Contact(models.AbstractModel):
|
||||
|
||||
@api.model
|
||||
def value_to_html(self, value, options):
|
||||
if not value.exists():
|
||||
if not value:
|
||||
return False
|
||||
|
||||
opf = options and options.get('fields') or ["name", "address", "phone", "mobile", "email"]
|
||||
|
||||
Reference in New Issue
Block a user