ソースを参照

Fixes #21249: Avoid unneeded user query when no event rules are present (#21250)

Jeremy Stretch 3 週間 前
コミット
3dcca73ecc
1 ファイル変更5 行追加1 行削除
  1. 5 1
      netbox/extras/events.py

+ 5 - 1
netbox/extras/events.py

@@ -86,7 +86,7 @@ def enqueue_event(queue, instance, request, event_type):
 
 
 def process_event_rules(event_rules, object_type, event_type, data, username=None, snapshots=None, request=None):
-    user = User.objects.get(username=username) if username else None
+    user = None  # To be resolved from the username if needed
 
     for event_rule in event_rules:
 
@@ -134,6 +134,10 @@ def process_event_rules(event_rules, object_type, event_type, data, username=Non
             # Resolve the script from action parameters
             script = event_rule.action_object.python_class()
 
+            # Retrieve the User if not already resolved
+            if user is None:
+                user = User.objects.get(username=username)
+
             # Enqueue a Job to record the script's execution
             from extras.jobs import ScriptJob
             params = {