Поиск
Плагины могут определять и регистрировать собственные модели для расширения основной функциональности поиска InfraVision. Обычно плагин включает файл с именем search.py, который содержит все поисковые индексы для его моделей (см. пример ниже).
# search.py
from netbox.search import SearchIndex
from .models import MyModel
class MyModelIndex(SearchIndex):
model = MyModel
fields = (
('name', 100),
('description', 500),
('comments', 5000),
)
display_attrs = ('site', 'device', 'status', 'description')
Поля, перечисленные в display_attrs, не будут кэшироваться для поиска, но будут отображаться рядом с объектом, когда он появляется в результатах глобального поиска. Это полезно для передачи пользователю дополнительной информации об объекте.
Чтобы зарегистрировать один или несколько индексов в InfraVision, определите список с именем indexes в конце этого файла:
indexes = [MyModelIndex]
Совет
Путь к списку поисковых индексов можно изменить, установив search_indexes в экземпляре PluginConfig.
::: netbox.search.SearchIndex