2
0

search.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. from netbox.search import SearchIndex, register_search
  2. from . import models
  3. @register_search
  4. class ContactIndex(SearchIndex):
  5. model = models.Contact
  6. fields = (
  7. ('name', 100),
  8. ('title', 300),
  9. ('phone', 300),
  10. ('email', 300),
  11. ('address', 300),
  12. ('link', 300),
  13. ('description', 500),
  14. ('comments', 5000),
  15. )
  16. display_attrs = ('group', 'title', 'phone', 'email', 'description')
  17. @register_search
  18. class ContactGroupIndex(SearchIndex):
  19. model = models.ContactGroup
  20. fields = (
  21. ('name', 100),
  22. ('slug', 110),
  23. ('description', 500),
  24. ('comments', 5000),
  25. )
  26. display_attrs = ('description',)
  27. @register_search
  28. class ContactRoleIndex(SearchIndex):
  29. model = models.ContactRole
  30. fields = (
  31. ('name', 100),
  32. ('slug', 110),
  33. ('description', 500),
  34. )
  35. display_attrs = ('description',)
  36. @register_search
  37. class TenantIndex(SearchIndex):
  38. model = models.Tenant
  39. fields = (
  40. ('name', 100),
  41. ('slug', 110),
  42. ('description', 500),
  43. ('comments', 5000),
  44. )
  45. display_attrs = ('group', 'description')
  46. @register_search
  47. class TenantGroupIndex(SearchIndex):
  48. model = models.TenantGroup
  49. fields = (
  50. ('name', 100),
  51. ('slug', 110),
  52. ('description', 500),
  53. ('comments', 5000),
  54. )
  55. display_attrs = ('description',)