Skip to content

Commit 41773cd

Browse files
committed
8927 fix for plugin search
1 parent c348b45 commit 41773cd

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

netbox/netbox/settings.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -650,7 +650,6 @@ def _setting(name, default=None):
650650
#
651651

652652
for plugin_name in PLUGINS:
653-
654653
# Import plugin module
655654
try:
656655
plugin = importlib.import_module(plugin_name)

netbox/search/apps.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
import importlib
12
import inspect
23
import sys
34
from django.apps import AppConfig
45

56
from django.apps import apps
7+
from django.conf import settings
68
from django.utils.module_loading import module_has_submodule
79
from netbox import denormalized
810

@@ -30,7 +32,13 @@ def ready(self):
3032
submodule_name = "search_indexes"
3133
if module_has_submodule(module, submodule_name):
3234
module_name = f"{name}.{submodule_name}"
33-
for cls_name, cls_obj in inspect.getmembers(sys.modules[module_name], predicate=inspect.isclass):
35+
if name in settings.PLUGINS:
36+
search_module = importlib.import_module(module_name)
37+
else:
38+
search_module = sys.modules[module_name]
39+
40+
cls_objects = inspect.getmembers(search_module, predicate=inspect.isclass)
41+
for cls_name, cls_obj in inspect.getmembers(search_module, predicate=inspect.isclass):
3442
if getattr(cls_obj, "search_index", False) and getattr(cls_obj, "model", None):
3543
cls_name = cls_obj.model.__name__.lower()
3644
if not default_search_engine.is_registered(cls_name, cls_obj):

0 commit comments

Comments
 (0)