worfklows: reindex carddata security columns on workflow changes (#53473)

This commit is contained in:
Frédéric Péters 2021-04-27 16:56:56 +02:00
parent 461a4b9c88
commit b7b61df1ca
1 changed files with 7 additions and 3 deletions

View File

@ -18,6 +18,7 @@ import base64
import collections
import copy
import datetime
import itertools
import os
import random
import sys
@ -432,14 +433,17 @@ class Workflow(StorableObject):
get_publisher().snapshot_class.snap(instance=self, comment=comment)
def update(job=None):
# instruct all related formdefs to update.
for form in self.formdefs(ignore_migration=True, order_by='id'):
# instruct all related carddefs/formdefs to update.
for form in itertools.chain(
self.formdefs(ignore_migration=True, order_by='id'),
self.carddefs(ignore_migration=True, order_by='id'),
):
form.data_class().rebuild_security()
if must_update:
form.rebuild()
if get_response():
get_response().add_after_job(N_('Reindexing forms after workflow change'), update)
get_response().add_after_job(N_('Reindexing cards and forms after workflow change'), update)
else:
update()