Avoid using SmartFilter during migrations (#14786)

Our migrations that touch roles tend to bring in our real models via
migration_utils.set_current_apps_for_migrations, and that can have
some undesirable side-effects.
This commit is contained in:
Jeff Bradberry
2024-02-12 10:48:58 -05:00
committed by GitHub
parent 55c6a319dc
commit 36f3b46726

View File

@@ -5,6 +5,7 @@
import copy import copy
import json import json
import re import re
import sys
import urllib.parse import urllib.parse
from jinja2 import sandbox, StrictUndefined from jinja2 import sandbox, StrictUndefined
@@ -406,6 +407,8 @@ class SmartFilterField(models.TextField):
# https://docs.python.org/2/library/stdtypes.html#truth-value-testing # https://docs.python.org/2/library/stdtypes.html#truth-value-testing
if not value: if not value:
return None return None
# avoid doing too much during migrations
if 'migrate' not in sys.argv:
value = urllib.parse.unquote(value) value = urllib.parse.unquote(value)
try: try:
SmartFilter().query_from_string(value) SmartFilter().query_from_string(value)