Merge pull request #10725 from jumpserver/pr@dev@perf_json_attr_m2m_filter

perf: 优化修改 rule vlaue
pull/10726/head
老广 2023-06-15 10:17:36 +08:00 committed by GitHub
commit 3e9bafadec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 1 deletions

View File

@ -500,9 +500,11 @@ class JSONManyToManyDescriptor:
value = value.values_list('id', flat=True)
elif isinstance(value, models.Model):
value = [value.id]
if isinstance(rule_value, (str, int)):
rule_value = [rule_value]
value = set(map(str, value))
rule_value = set(map(str, rule_value))
res &= value & rule_value
res &= bool(value & rule_value)
else:
logging.error("unknown match: {}".format(rule['match']))
res &= False