feeder: filter empty formdefs as early as possible (#52015)

This commit is contained in:
Benjamin Dauvergne 2021-03-15 10:54:37 +01:00
parent 1640abbfdc
commit f7f1a6d26f
1 changed files with 2 additions and 4 deletions

View File

@ -306,7 +306,7 @@ class WcsOlapFeeder(object):
@cached_property
def formdefs(self):
return [formdef for formdef in self.api.formdefs if not self.slugs or formdef.slug in self.slugs]
return [formdef for formdef in self.api.formdefs if (not self.slugs or formdef.slug in self.slugs) and not formdef.is_empty]
@cached_property
def roles(self):
@ -530,7 +530,7 @@ class WcsOlapFeeder(object):
self.create_referenced_table(table_name, formdef_fields, 'types de formulaire')
formdefs = [(form.slug, categories_mapping.get(form.schema.category),
form.schema.name) for form in self.formdefs if not form.is_empty]
form.schema.name) for form in self.formdefs]
self.formdefs_mapping = self.do_referenced_data(table_name, formdefs, 'ref')
self.update_table_sequence_number(table_name)
@ -603,8 +603,6 @@ class WcsOlapFeeder(object):
self.do_dates_table()
self.do_base_table()
for formdef in self.formdefs:
if formdef.is_empty:
continue
self.api.cache = {}
try:
formdef_feeder = WcsFormdefFeeder(self, formdef, do_feed=self.do_feed)