From 73210bee46637f8bc0ed2ce54980a3fa50153e22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Tue, 8 Feb 2011 00:06:58 +0100 Subject: [PATCH] Get first the lazy fields from form view to reduce number of requests --- tryton/gui/window/view_form/view/form.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tryton/gui/window/view_form/view/form.py b/tryton/gui/window/view_form/view/form.py index 6c89d77d8b..e5e1adccef 100644 --- a/tryton/gui/window/view_form/view/form.py +++ b/tryton/gui/window/view_form/view/form.py @@ -213,7 +213,11 @@ class ViewForm(ParserView): record = self.screen.current_record if record: # Force to set fields in record - for field in record.group.fields: + # Get first the lazy one to reduce number of requests + fields = [(name, field.attrs.get('loading', 'eager')) + for name, field in record.group.fields.iteritems()] + fields.sort(lambda x, y: cmp(y[1], x[1])) + for field, _ in fields: record[field].get(record, check_load=False) for name, widgets in self.widgets.iteritems(): field = None