nautobot 2.4.5__py3-none-any.whl → 2.4.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of nautobot might be problematic. Click here for more details.

Files changed (410) hide show
  1. nautobot/apps/forms.py +2 -0
  2. nautobot/circuits/templates/circuits/providernetwork.html +1 -1
  3. nautobot/circuits/templates/circuits/providernetwork_retrieve.html +2 -55
  4. nautobot/circuits/views.py +20 -23
  5. nautobot/cloud/templates/cloud/cloudaccount_retrieve.html +2 -40
  6. nautobot/cloud/views.py +12 -0
  7. nautobot/core/api/mixins.py +10 -0
  8. nautobot/core/api/urls.py +2 -2
  9. nautobot/core/api/views.py +39 -1
  10. nautobot/core/celery/encoders.py +2 -2
  11. nautobot/core/forms/__init__.py +2 -0
  12. nautobot/core/forms/fields.py +23 -7
  13. nautobot/core/forms/utils.py +1 -0
  14. nautobot/core/forms/widgets.py +18 -0
  15. nautobot/core/jobs/bulk_actions.py +1 -1
  16. nautobot/core/management/commands/generate_test_data.py +1 -1
  17. nautobot/core/models/name_color_content_types.py +9 -0
  18. nautobot/core/models/validators.py +7 -0
  19. nautobot/core/settings.py +0 -14
  20. nautobot/core/settings.yaml +0 -28
  21. nautobot/core/tables.py +6 -1
  22. nautobot/core/templates/generic/object_retrieve.html +1 -1
  23. nautobot/core/templates/widgets/sluginput.html +5 -1
  24. nautobot/core/templatetags/helpers.py +15 -1
  25. nautobot/core/testing/api.py +18 -0
  26. nautobot/core/testing/integration.py +6 -2
  27. nautobot/core/tests/nautobot_config.py +0 -2
  28. nautobot/core/tests/runner.py +17 -140
  29. nautobot/core/tests/test_api.py +4 -4
  30. nautobot/core/tests/test_authentication.py +83 -4
  31. nautobot/core/tests/test_forms.py +11 -8
  32. nautobot/core/tests/test_graphql.py +9 -0
  33. nautobot/core/tests/test_jobs.py +7 -0
  34. nautobot/core/ui/object_detail.py +47 -3
  35. nautobot/core/utils/lookup.py +2 -2
  36. nautobot/dcim/factory.py +2 -0
  37. nautobot/dcim/filters/__init__.py +5 -0
  38. nautobot/dcim/forms.py +27 -1
  39. nautobot/dcim/migrations/0068_alter_softwareimagefile_download_url.py +19 -0
  40. nautobot/dcim/migrations/0069_softwareimagefile_external_integration.py +25 -0
  41. nautobot/dcim/models/devices.py +9 -2
  42. nautobot/dcim/models/locations.py +9 -0
  43. nautobot/dcim/tables/devices.py +1 -0
  44. nautobot/dcim/templates/dcim/device_list.html +1 -1
  45. nautobot/dcim/templates/dcim/devicetype.html +1 -1
  46. nautobot/dcim/templates/dcim/manufacturer.html +1 -63
  47. nautobot/dcim/templates/dcim/module_list.html +1 -1
  48. nautobot/dcim/templates/dcim/moduletype_retrieve.html +1 -1
  49. nautobot/dcim/templates/dcim/softwareimagefile_retrieve.html +4 -0
  50. nautobot/dcim/tests/integration/test_module_bay_position.py +125 -0
  51. nautobot/dcim/tests/test_api.py +74 -31
  52. nautobot/dcim/tests/test_filters.py +2 -0
  53. nautobot/dcim/tests/test_models.py +78 -0
  54. nautobot/dcim/tests/test_views.py +7 -1
  55. nautobot/dcim/urls.py +1 -45
  56. nautobot/dcim/views.py +35 -66
  57. nautobot/extras/choices.py +4 -0
  58. nautobot/extras/filters/__init__.py +6 -0
  59. nautobot/extras/forms/forms.py +83 -11
  60. nautobot/extras/models/customfields.py +10 -9
  61. nautobot/extras/plugins/marketplace_manifest.yml +18 -0
  62. nautobot/extras/signals.py +43 -4
  63. nautobot/extras/tables.py +4 -5
  64. nautobot/extras/tasks.py +4 -2
  65. nautobot/extras/templates/extras/contact_retrieve.html +1 -58
  66. nautobot/extras/templates/extras/exporttemplate.html +1 -53
  67. nautobot/extras/templates/extras/inc/panel_changelog.html +1 -1
  68. nautobot/extras/templates/extras/inc/panel_jobhistory.html +1 -1
  69. nautobot/extras/templates/extras/status.html +1 -37
  70. nautobot/extras/templates/extras/team_retrieve.html +1 -58
  71. nautobot/extras/tests/integration/test_notes.py +1 -1
  72. nautobot/extras/tests/test_api.py +22 -7
  73. nautobot/extras/tests/test_changelog.py +4 -4
  74. nautobot/extras/tests/test_customfields.py +27 -0
  75. nautobot/extras/tests/test_plugins.py +19 -13
  76. nautobot/extras/tests/test_relationships.py +9 -0
  77. nautobot/extras/tests/test_tags.py +2 -2
  78. nautobot/extras/tests/test_views.py +37 -6
  79. nautobot/extras/urls.py +3 -100
  80. nautobot/extras/views.py +111 -133
  81. nautobot/ipam/tables.py +7 -2
  82. nautobot/ipam/templates/ipam/namespace_retrieve.html +0 -41
  83. nautobot/ipam/templates/ipam/service.html +2 -46
  84. nautobot/ipam/templates/ipam/service_edit.html +1 -17
  85. nautobot/ipam/templates/ipam/service_retrieve.html +7 -0
  86. nautobot/ipam/tests/migration/__init__.py +0 -0
  87. nautobot/ipam/tests/migration/test_migrations.py +510 -0
  88. nautobot/ipam/tests/test_api.py +66 -36
  89. nautobot/ipam/tests/test_filters.py +0 -10
  90. nautobot/ipam/tests/test_views.py +44 -2
  91. nautobot/ipam/urls.py +2 -47
  92. nautobot/ipam/utils/migrations.py +185 -152
  93. nautobot/ipam/utils/testing.py +177 -0
  94. nautobot/ipam/views.py +95 -157
  95. nautobot/project-static/css/base.css +5 -0
  96. nautobot/project-static/docs/404.html +0 -2
  97. nautobot/project-static/docs/apps/index.html +0 -2
  98. nautobot/project-static/docs/apps/nautobot-apps.html +0 -2
  99. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +0 -2
  100. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +0 -2
  101. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +0 -2
  102. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +0 -2
  103. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +0 -2
  104. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +0 -2
  105. nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +0 -2
  106. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +0 -2
  107. nautobot/project-static/docs/code-reference/nautobot/apps/events.html +0 -2
  108. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +0 -2
  109. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +0 -2
  110. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +0 -2
  111. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +62 -2
  112. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +0 -2
  113. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +0 -2
  114. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +47 -2
  115. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +0 -2
  116. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +0 -2
  117. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +18 -2
  118. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +0 -2
  119. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +70 -5
  120. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +0 -2
  121. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +0 -2
  122. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +0 -2
  123. nautobot/project-static/docs/development/apps/api/configuration-view.html +0 -2
  124. nautobot/project-static/docs/development/apps/api/database-backend-config.html +0 -2
  125. nautobot/project-static/docs/development/apps/api/models/django-admin.html +0 -2
  126. nautobot/project-static/docs/development/apps/api/models/global-search.html +0 -2
  127. nautobot/project-static/docs/development/apps/api/models/graphql.html +0 -2
  128. nautobot/project-static/docs/development/apps/api/models/index.html +0 -2
  129. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +0 -2
  130. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +0 -2
  131. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +0 -2
  132. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +0 -2
  133. nautobot/project-static/docs/development/apps/api/platform-features/index.html +0 -2
  134. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +0 -2
  135. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +0 -2
  136. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +0 -2
  137. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +0 -2
  138. nautobot/project-static/docs/development/apps/api/platform-features/table-extensions.html +0 -2
  139. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +0 -2
  140. nautobot/project-static/docs/development/apps/api/prometheus.html +0 -2
  141. nautobot/project-static/docs/development/apps/api/setup.html +0 -2
  142. nautobot/project-static/docs/development/apps/api/testing.html +0 -89
  143. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +0 -2
  144. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +0 -2
  145. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +0 -2
  146. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +0 -2
  147. nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +0 -2
  148. nautobot/project-static/docs/development/apps/api/views/base-template.html +0 -2
  149. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +0 -2
  150. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +0 -2
  151. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +0 -2
  152. nautobot/project-static/docs/development/apps/api/views/index.html +0 -2
  153. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +0 -2
  154. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +0 -2
  155. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +0 -2
  156. nautobot/project-static/docs/development/apps/api/views/notes.html +0 -2
  157. nautobot/project-static/docs/development/apps/api/views/rest-api.html +0 -2
  158. nautobot/project-static/docs/development/apps/api/views/urls.html +0 -2
  159. nautobot/project-static/docs/development/apps/index.html +0 -2
  160. nautobot/project-static/docs/development/apps/migration/code-updates.html +0 -2
  161. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +1 -3
  162. nautobot/project-static/docs/development/apps/migration/from-v1.html +0 -2
  163. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +0 -2
  164. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +0 -2
  165. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +0 -2
  166. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +0 -2
  167. nautobot/project-static/docs/development/apps/migration/ui-component-framework/best-practices.html +0 -2
  168. nautobot/project-static/docs/development/apps/migration/ui-component-framework/custom-content.html +0 -2
  169. nautobot/project-static/docs/development/apps/migration/ui-component-framework/index.html +0 -2
  170. nautobot/project-static/docs/development/apps/migration/ui-component-framework/migration-steps.html +0 -2
  171. nautobot/project-static/docs/development/apps/porting-from-netbox.html +0 -2
  172. nautobot/project-static/docs/development/core/application-registry.html +0 -2
  173. nautobot/project-static/docs/development/core/best-practices.html +3 -5
  174. nautobot/project-static/docs/development/core/bootstrap-ui.html +0 -2
  175. nautobot/project-static/docs/development/core/caching.html +0 -2
  176. nautobot/project-static/docs/development/core/controllers.html +0 -2
  177. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +0 -2
  178. nautobot/project-static/docs/development/core/generic-views.html +0 -2
  179. nautobot/project-static/docs/development/core/getting-started.html +78 -109
  180. nautobot/project-static/docs/development/core/homepage.html +0 -2
  181. nautobot/project-static/docs/development/core/index.html +0 -2
  182. nautobot/project-static/docs/development/core/minikube-dev-environment-for-k8s-jobs.html +0 -2
  183. nautobot/project-static/docs/development/core/model-checklist.html +0 -2
  184. nautobot/project-static/docs/development/core/model-features.html +0 -2
  185. nautobot/project-static/docs/development/core/natural-keys.html +0 -2
  186. nautobot/project-static/docs/development/core/navigation-menu.html +0 -2
  187. nautobot/project-static/docs/development/core/release-checklist.html +1 -3
  188. nautobot/project-static/docs/development/core/role-internals.html +0 -2
  189. nautobot/project-static/docs/development/core/settings.html +0 -2
  190. nautobot/project-static/docs/development/core/style-guide.html +1 -3
  191. nautobot/project-static/docs/development/core/templates.html +0 -2
  192. nautobot/project-static/docs/development/core/testing.html +24 -200
  193. nautobot/project-static/docs/development/core/ui-component-framework.html +0 -2
  194. nautobot/project-static/docs/development/core/user-preferences.html +0 -2
  195. nautobot/project-static/docs/development/index.html +0 -2
  196. nautobot/project-static/docs/development/jobs/index.html +0 -2
  197. nautobot/project-static/docs/development/jobs/migration/from-v1.html +0 -2
  198. nautobot/project-static/docs/index.html +0 -2
  199. nautobot/project-static/docs/media/user-guide/administration/getting-started/nautobot-cloud.png +0 -0
  200. nautobot/project-static/docs/objects.inv +0 -0
  201. nautobot/project-static/docs/overview/application_stack.html +1 -3
  202. nautobot/project-static/docs/overview/design_philosophy.html +0 -2
  203. nautobot/project-static/docs/release-notes/index.html +0 -2
  204. nautobot/project-static/docs/release-notes/version-1.0.html +0 -2
  205. nautobot/project-static/docs/release-notes/version-1.1.html +0 -2
  206. nautobot/project-static/docs/release-notes/version-1.2.html +0 -2
  207. nautobot/project-static/docs/release-notes/version-1.3.html +0 -2
  208. nautobot/project-static/docs/release-notes/version-1.4.html +0 -2
  209. nautobot/project-static/docs/release-notes/version-1.5.html +0 -2
  210. nautobot/project-static/docs/release-notes/version-1.6.html +0 -2
  211. nautobot/project-static/docs/release-notes/version-2.0.html +0 -2
  212. nautobot/project-static/docs/release-notes/version-2.1.html +0 -2
  213. nautobot/project-static/docs/release-notes/version-2.2.html +0 -2
  214. nautobot/project-static/docs/release-notes/version-2.3.html +0 -2
  215. nautobot/project-static/docs/release-notes/version-2.4.html +364 -3
  216. nautobot/project-static/docs/search/search_index.json +1 -1
  217. nautobot/project-static/docs/sitemap.xml +290 -290
  218. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  219. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +0 -2
  220. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +0 -2
  221. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +0 -2
  222. nautobot/project-static/docs/user-guide/administration/configuration/index.html +0 -2
  223. nautobot/project-static/docs/user-guide/administration/configuration/redis.html +0 -2
  224. nautobot/project-static/docs/user-guide/administration/configuration/settings.html +2 -50
  225. nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +0 -2
  226. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +0 -2
  227. nautobot/project-static/docs/user-guide/administration/guides/docker.html +0 -2
  228. nautobot/project-static/docs/user-guide/administration/guides/health-checks.html +0 -2
  229. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +71 -2
  230. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +0 -2
  231. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +0 -2
  232. nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +0 -2
  233. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +0 -2
  234. nautobot/project-static/docs/user-guide/administration/guides/selinux-troubleshooting.html +0 -2
  235. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +0 -2
  236. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +0 -2
  237. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +3 -3
  238. nautobot/project-static/docs/user-guide/administration/installation/index.html +257 -18
  239. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +0 -2
  240. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +0 -2
  241. nautobot/project-static/docs/user-guide/administration/installation/services.html +0 -2
  242. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +0 -2
  243. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +0 -2
  244. nautobot/project-static/docs/user-guide/administration/security/index.html +0 -2
  245. nautobot/project-static/docs/user-guide/administration/security/notices.html +0 -2
  246. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +1 -3
  247. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +0 -2
  248. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +0 -2
  249. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +0 -2
  250. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +0 -2
  251. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +0 -2
  252. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +0 -2
  253. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +0 -2
  254. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +0 -2
  255. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +0 -2
  256. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +2 -4
  257. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +0 -2
  258. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +0 -2
  259. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +0 -2
  260. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +0 -2
  261. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +0 -2
  262. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +0 -2
  263. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +0 -2
  264. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +0 -2
  265. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +0 -2
  266. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +0 -2
  267. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +0 -2
  268. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +0 -2
  269. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +0 -2
  270. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +0 -2
  271. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +0 -2
  272. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +0 -2
  273. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +0 -2
  274. nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +0 -2
  275. nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +0 -2
  276. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +0 -2
  277. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +0 -2
  278. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +0 -2
  279. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +0 -2
  280. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +0 -2
  281. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +0 -2
  282. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +0 -2
  283. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +0 -2
  284. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +0 -2
  285. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +0 -2
  286. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +0 -2
  287. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +0 -2
  288. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +0 -2
  289. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +0 -2
  290. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +0 -2
  291. nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +0 -2
  292. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +0 -2
  293. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +0 -2
  294. nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +0 -2
  295. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +0 -2
  296. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +0 -2
  297. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +0 -2
  298. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +0 -2
  299. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +0 -2
  300. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +0 -2
  301. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +0 -2
  302. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +0 -2
  303. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +0 -2
  304. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +0 -2
  305. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +0 -2
  306. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +0 -2
  307. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +4 -2
  308. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +0 -2
  309. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +0 -2
  310. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualdevicecontext.html +0 -2
  311. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +0 -2
  312. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +0 -2
  313. nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +0 -2
  314. nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +0 -2
  315. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +0 -2
  316. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +0 -2
  317. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +0 -2
  318. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +0 -2
  319. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +0 -2
  320. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +0 -2
  321. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +0 -2
  322. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +0 -2
  323. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +0 -2
  324. nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +0 -2
  325. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +0 -2
  326. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +0 -2
  327. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +0 -2
  328. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +0 -2
  329. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +0 -2
  330. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +0 -2
  331. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +0 -2
  332. nautobot/project-static/docs/user-guide/core-data-model/wireless/index.html +0 -2
  333. nautobot/project-static/docs/user-guide/core-data-model/wireless/radioprofile.html +0 -2
  334. nautobot/project-static/docs/user-guide/core-data-model/wireless/supporteddatarate.html +0 -2
  335. nautobot/project-static/docs/user-guide/core-data-model/wireless/wirelessnetwork.html +0 -2
  336. nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +11 -13
  337. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +0 -2
  338. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +8 -10
  339. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +1 -2
  340. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +0 -2
  341. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +40 -27
  342. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +4 -6
  343. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +1 -3
  344. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +77 -7
  345. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +1 -3
  346. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +0 -3
  347. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +1 -3
  348. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +0 -2
  349. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +0 -2
  350. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +0 -2
  351. nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +0 -2
  352. nautobot/project-static/docs/user-guide/feature-guides/wireless-networks-and-controllers.html +0 -2
  353. nautobot/project-static/docs/user-guide/index.html +89 -4
  354. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +0 -2
  355. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +0 -2
  356. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +0 -2
  357. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +0 -2
  358. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +0 -2
  359. nautobot/project-static/docs/user-guide/platform-functionality/events.html +0 -2
  360. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +0 -2
  361. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +0 -2
  362. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +0 -2
  363. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +0 -2
  364. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +0 -2
  365. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +0 -2
  366. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +0 -2
  367. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +0 -2
  368. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +0 -2
  369. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +0 -2
  370. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobqueue.html +0 -2
  371. nautobot/project-static/docs/user-guide/platform-functionality/jobs/kubernetes-job-support.html +0 -2
  372. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +0 -2
  373. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +0 -2
  374. nautobot/project-static/docs/user-guide/platform-functionality/note.html +0 -2
  375. nautobot/project-static/docs/user-guide/platform-functionality/objectmetadata.html +0 -2
  376. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +0 -2
  377. nautobot/project-static/docs/user-guide/platform-functionality/rendering-jinja-templates.html +0 -2
  378. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +0 -2
  379. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +0 -2
  380. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +0 -2
  381. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +0 -2
  382. nautobot/project-static/docs/user-guide/platform-functionality/role.html +0 -2
  383. nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +0 -2
  384. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +0 -2
  385. nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +0 -2
  386. nautobot/project-static/docs/user-guide/platform-functionality/status.html +0 -2
  387. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +0 -2
  388. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +0 -2
  389. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +0 -2
  390. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +0 -2
  391. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +207 -124
  392. nautobot/project-static/js/forms.js +88 -37
  393. nautobot/project-static/js/homepage_layout.js +12 -3
  394. nautobot/virtualization/forms.py +20 -0
  395. nautobot/virtualization/templates/virtualization/clustergroup.html +1 -39
  396. nautobot/virtualization/templates/virtualization/clustertype.html +1 -0
  397. nautobot/virtualization/tests/test_api.py +14 -3
  398. nautobot/virtualization/tests/test_views.py +10 -2
  399. nautobot/virtualization/urls.py +10 -93
  400. nautobot/virtualization/views.py +33 -72
  401. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/METADATA +6 -5
  402. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/RECORD +407 -402
  403. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/WHEEL +1 -1
  404. nautobot/core/tests/performance_baselines.yml +0 -8900
  405. nautobot/dcim/templates/dcim/modulebay_create.html +0 -39
  406. nautobot/ipam/tests/test_migrations.py +0 -462
  407. /nautobot/ipam/templates/ipam/{namespace_ipaddresses.html → namespace_ip_addresses.html} +0 -0
  408. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/LICENSE.txt +0 -0
  409. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/NOTICE +0 -0
  410. {nautobot-2.4.5.dist-info → nautobot-2.4.7.dist-info}/entry_points.txt +0 -0
@@ -7310,6 +7310,15 @@
7310
7310
  </span>
7311
7311
  </a>
7312
7312
 
7313
+ </li>
7314
+
7315
+ <li class="md-nav__item">
7316
+ <a href="#nautobot.apps.forms.AutoPopulateWidget" class="md-nav__link">
7317
+ <span class="md-ellipsis">
7318
+ AutoPopulateWidget
7319
+ </span>
7320
+ </a>
7321
+
7313
7322
  </li>
7314
7323
 
7315
7324
  <li class="md-nav__item">
@@ -10060,6 +10069,15 @@
10060
10069
  </span>
10061
10070
  </a>
10062
10071
 
10072
+ </li>
10073
+
10074
+ <li class="md-nav__item">
10075
+ <a href="#nautobot.apps.forms.AutoPopulateWidget" class="md-nav__link">
10076
+ <span class="md-ellipsis">
10077
+ AutoPopulateWidget
10078
+ </span>
10079
+ </a>
10080
+
10063
10081
  </li>
10064
10082
 
10065
10083
  <li class="md-nav__item">
@@ -11113,6 +11131,50 @@
11113
11131
 
11114
11132
 
11115
11133
 
11134
+ </div>
11135
+
11136
+ </div>
11137
+
11138
+ </div>
11139
+
11140
+ <div class="doc doc-object doc-class">
11141
+
11142
+
11143
+
11144
+ <h2 id="nautobot.apps.forms.AutoPopulateWidget" class="doc doc-heading">
11145
+ <code>nautobot.apps.forms.AutoPopulateWidget</code>
11146
+
11147
+
11148
+ <a href="#nautobot.apps.forms.AutoPopulateWidget" class="headerlink" title="Permanent link">&para;</a></h2>
11149
+
11150
+
11151
+ <div class="doc doc-contents ">
11152
+ <p class="doc doc-class-bases">
11153
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.widgets.SlugWidget" href="#nautobot.apps.forms.SlugWidget">SlugWidget</a></code></p>
11154
+
11155
+
11156
+ <p>Subclass SlugWidget and add support for auto-populate JavaScript logic from <code>form.js</code>.</p>
11157
+
11158
+
11159
+
11160
+
11161
+
11162
+
11163
+
11164
+
11165
+
11166
+ <div class="doc doc-children">
11167
+
11168
+
11169
+
11170
+
11171
+
11172
+
11173
+
11174
+
11175
+
11176
+
11177
+
11116
11178
  </div>
11117
11179
 
11118
11180
  </div>
@@ -14537,8 +14599,6 @@ as available choices.</p>
14537
14599
 
14538
14600
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
14539
14601
 
14540
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
14541
-
14542
14602
 
14543
14603
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
14544
14604
  document$.subscribe(() => { lightbox.reload() });
@@ -9960,8 +9960,6 @@ if the filter field is a subclass of MultipleChoiceFilter, the argument will be
9960
9960
 
9961
9961
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9962
9962
 
9963
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9964
-
9965
9963
 
9966
9964
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9967
9965
  document$.subscribe(() => { lightbox.reload() });
@@ -13139,8 +13139,6 @@ then refresh <strong>all</strong> such Jobs before retrieving the job class.</p>
13139
13139
 
13140
13140
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
13141
13141
 
13142
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
13143
-
13144
13142
 
13145
13143
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
13146
13144
  document$.subscribe(() => { lightbox.reload() });
@@ -7904,6 +7904,21 @@
7904
7904
  </span>
7905
7905
  </a>
7906
7906
 
7907
+ <nav class="md-nav" aria-label="EnhancedURLValidator">
7908
+ <ul class="md-nav__list">
7909
+
7910
+ <li class="md-nav__item">
7911
+ <a href="#nautobot.apps.models.EnhancedURLValidator.__getattribute__" class="md-nav__link">
7912
+ <span class="md-ellipsis">
7913
+ __getattribute__
7914
+ </span>
7915
+ </a>
7916
+
7917
+ </li>
7918
+
7919
+ </ul>
7920
+ </nav>
7921
+
7907
7922
  </li>
7908
7923
 
7909
7924
  <li class="md-nav__item">
@@ -10981,6 +10996,21 @@
10981
10996
  </span>
10982
10997
  </a>
10983
10998
 
10999
+ <nav class="md-nav" aria-label="EnhancedURLValidator">
11000
+ <ul class="md-nav__list">
11001
+
11002
+ <li class="md-nav__item">
11003
+ <a href="#nautobot.apps.models.EnhancedURLValidator.__getattribute__" class="md-nav__link">
11004
+ <span class="md-ellipsis">
11005
+ __getattribute__
11006
+ </span>
11007
+ </a>
11008
+
11009
+ </li>
11010
+
11011
+ </ul>
11012
+ </nav>
11013
+
10984
11014
  </li>
10985
11015
 
10986
11016
  <li class="md-nav__item">
@@ -13342,6 +13372,23 @@ schemes specified in the configuration.</p>
13342
13372
 
13343
13373
 
13344
13374
 
13375
+ <div class="doc doc-object doc-function">
13376
+
13377
+
13378
+ <h3 id="nautobot.apps.models.EnhancedURLValidator.__getattribute__" class="doc doc-heading">
13379
+ <code class="highlight language-python"><span class="fm">__getattribute__</span><span class="p">(</span><span class="n">name</span><span class="p">)</span></code>
13380
+
13381
+ <a href="#nautobot.apps.models.EnhancedURLValidator.__getattribute__" class="headerlink" title="Permanent link">&para;</a></h3>
13382
+
13383
+
13384
+ <div class="doc doc-contents ">
13385
+
13386
+ <p>Dynamically fetch schemes each time it's accessed.</p>
13387
+
13388
+ </div>
13389
+
13390
+ </div>
13391
+
13345
13392
 
13346
13393
 
13347
13394
  </div>
@@ -16092,8 +16139,6 @@ e.g:
16092
16139
 
16093
16140
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
16094
16141
 
16095
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
16096
-
16097
16142
 
16098
16143
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
16099
16144
  document$.subscribe(() => { lightbox.reload() });
@@ -9463,8 +9463,6 @@ sort it within Python to ensure correctness.</p>
9463
9463
 
9464
9464
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9465
9465
 
9466
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9467
-
9468
9466
 
9469
9467
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9470
9468
  document$.subscribe(() => { lightbox.reload() });
@@ -9627,8 +9627,6 @@
9627
9627
 
9628
9628
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9629
9629
 
9630
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9631
-
9632
9630
 
9633
9631
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9634
9632
  document$.subscribe(() => { lightbox.reload() });
@@ -10323,6 +10323,24 @@ If not specified, the first key in <code>url_params</code> will be implicitly us
10323
10323
  <code>False</code>
10324
10324
  </td>
10325
10325
  </tr>
10326
+ <tr class="doc-section-item">
10327
+ <td>
10328
+ <code>display_field</code>
10329
+ </td>
10330
+ <td>
10331
+ <code>str</code>
10332
+ </td>
10333
+ <td>
10334
+ <div class="doc-md-description">
10335
+ <p>Name of the field to use when displaying an object rather than just a count.
10336
+ This will be passed to hyperlinked_object() as the <code>field</code> parameter
10337
+ If not specified, it will use the "display" field.</p>
10338
+ </div>
10339
+ </td>
10340
+ <td>
10341
+ <code>&#39;display&#39;</code>
10342
+ </td>
10343
+ </tr>
10326
10344
  <tr class="doc-section-item">
10327
10345
  <td>
10328
10346
  <code>**kwargs</code>
@@ -10843,8 +10861,6 @@ example:
10843
10861
 
10844
10862
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
10845
10863
 
10846
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
10847
-
10848
10864
 
10849
10865
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
10850
10866
  document$.subscribe(() => { lightbox.reload() });
@@ -16497,8 +16497,6 @@ document$.subscribe(() => { lightbox.reload() });
16497
16497
 
16498
16498
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
16499
16499
 
16500
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
16501
-
16502
16500
 
16503
16501
  </body>
16504
16502
  </html>
@@ -12583,6 +12583,69 @@ Mutually exclusive with <code>column_headers</code>.</p>
12583
12583
  <p>A Tab that doesn't render inline on the same page, but instead links to a distinct view of its own when clicked.</p>
12584
12584
 
12585
12585
 
12586
+ <p><span class="doc-section-title">Parameters:</span></p>
12587
+ <table>
12588
+ <thead>
12589
+ <tr>
12590
+ <th>Name</th>
12591
+ <th>Type</th>
12592
+ <th>Description</th>
12593
+ <th>Default</th>
12594
+ </tr>
12595
+ </thead>
12596
+ <tbody>
12597
+ <tr class="doc-section-item">
12598
+ <td>
12599
+ <code>url_name</code>
12600
+ </td>
12601
+ <td>
12602
+ <code>str</code>
12603
+ </td>
12604
+ <td>
12605
+ <div class="doc-md-description">
12606
+ <p>The name of the URL pattern to link to, which will be reversed to generate the URL.</p>
12607
+ </div>
12608
+ </td>
12609
+ <td>
12610
+ <em>required</em>
12611
+ </td>
12612
+ </tr>
12613
+ <tr class="doc-section-item">
12614
+ <td>
12615
+ <code>label_wrapper_template_path</code>
12616
+ </td>
12617
+ <td>
12618
+ <code>str</code>
12619
+ </td>
12620
+ <td>
12621
+ <div class="doc-md-description">
12622
+ <p>Template path to render the tab label to HTML.</p>
12623
+ </div>
12624
+ </td>
12625
+ <td>
12626
+ <code>&#39;components/tab/label_wrapper_distinct_view.html&#39;</code>
12627
+ </td>
12628
+ </tr>
12629
+ <tr class="doc-section-item">
12630
+ <td>
12631
+ <code>related_object_attribute</code>
12632
+ </td>
12633
+ <td>
12634
+ <code>str</code>
12635
+ </td>
12636
+ <td>
12637
+ <div class="doc-md-description">
12638
+ <p>The name of the related object attribute to count for the tab label.</p>
12639
+ </div>
12640
+ </td>
12641
+ <td>
12642
+ <code>&#39;&#39;</code>
12643
+ </td>
12644
+ </tr>
12645
+ </tbody>
12646
+ </table>
12647
+
12648
+
12586
12649
 
12587
12650
 
12588
12651
 
@@ -15425,14 +15488,18 @@ Mutually exclusive with <code>context_table_key</code>.</p>
15425
15488
  <code>table_filter</code>
15426
15489
  </td>
15427
15490
  <td>
15428
- <code>str</code>
15491
+ <code>(str, list)</code>
15429
15492
  </td>
15430
15493
  <td>
15431
15494
  <div class="doc-md-description">
15432
- <p>The name of the filter to apply to the queryset to initialize the table class.
15495
+ <p>The filter(s) to apply to the queryset to initialize the table class.
15433
15496
  For example, in a LocationType detail view, for an ObjectsTablePanel of related Locations, this would
15434
15497
  be <code>location_type</code>, because <code>Location.objects.filter(location_type=obj)</code> gives the desired queryset.
15435
- Mutually exclusive with <code>table_attribute</code>.</p>
15498
+ Mutually exclusive with <code>table_attribute</code>.
15499
+ For example, in ProviderNetwork detail view, for an ObjectsTablePanel of related Circuits, this would
15500
+ be <code>["circuit_termination_a__provider_network", "circuit_termination_z__provider_network"]</code> because
15501
+ <code>Circuit.objects.filter(Q(circuit_termination_a__provider_network=instance)
15502
+ | Q(circuit_termination_z__provider_network=instance))</code> gives the desired queryset.</p>
15436
15503
  </div>
15437
15504
  </td>
15438
15505
  <td>
@@ -17201,8 +17268,6 @@ Note that content does not need to be marked as safe because this is automatical
17201
17268
 
17202
17269
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
17203
17270
 
17204
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
17205
-
17206
17271
 
17207
17272
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
17208
17273
  document$.subscribe(() => { lightbox.reload() });
@@ -9407,8 +9407,6 @@
9407
9407
 
9408
9408
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9409
9409
 
9410
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9411
-
9412
9410
 
9413
9411
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9414
9412
  document$.subscribe(() => { lightbox.reload() });
@@ -13775,8 +13775,6 @@ worker count to the description.</p>
13775
13775
 
13776
13776
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
13777
13777
 
13778
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
13779
-
13780
13778
 
13781
13779
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
13782
13780
  document$.subscribe(() => { lightbox.reload() });
@@ -13969,8 +13969,6 @@ applicable.</p>
13969
13969
 
13970
13970
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
13971
13971
 
13972
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
13973
-
13974
13972
 
13975
13973
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
13976
13974
  document$.subscribe(() => { lightbox.reload() });
@@ -9293,8 +9293,6 @@
9293
9293
 
9294
9294
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9295
9295
 
9296
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9297
-
9298
9296
 
9299
9297
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9300
9298
  document$.subscribe(() => { lightbox.reload() });
@@ -9294,8 +9294,6 @@
9294
9294
 
9295
9295
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9296
9296
 
9297
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9298
-
9299
9297
 
9300
9298
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9301
9299
  document$.subscribe(() => { lightbox.reload() });
@@ -9284,8 +9284,6 @@
9284
9284
 
9285
9285
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9286
9286
 
9287
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9288
-
9289
9287
 
9290
9288
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9291
9289
  document$.subscribe(() => { lightbox.reload() });
@@ -9278,8 +9278,6 @@
9278
9278
 
9279
9279
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9280
9280
 
9281
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9282
-
9283
9281
 
9284
9282
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9285
9283
  document$.subscribe(() => { lightbox.reload() });
@@ -9447,8 +9447,6 @@
9447
9447
 
9448
9448
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9449
9449
 
9450
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9451
-
9452
9450
 
9453
9451
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9454
9452
  document$.subscribe(() => { lightbox.reload() });
@@ -9431,8 +9431,6 @@
9431
9431
 
9432
9432
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9433
9433
 
9434
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9435
-
9436
9434
 
9437
9435
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9438
9436
  document$.subscribe(() => { lightbox.reload() });
@@ -9569,8 +9569,6 @@
9569
9569
 
9570
9570
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9571
9571
 
9572
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9573
-
9574
9572
 
9575
9573
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9576
9574
  document$.subscribe(() => { lightbox.reload() });
@@ -9386,8 +9386,6 @@
9386
9386
 
9387
9387
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9388
9388
 
9389
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9390
-
9391
9389
 
9392
9390
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9393
9391
  document$.subscribe(() => { lightbox.reload() });
@@ -9314,8 +9314,6 @@
9314
9314
 
9315
9315
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9316
9316
 
9317
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9318
-
9319
9317
 
9320
9318
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9321
9319
  document$.subscribe(() => { lightbox.reload() });
@@ -9327,8 +9327,6 @@
9327
9327
 
9328
9328
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9329
9329
 
9330
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9331
-
9332
9330
 
9333
9331
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9334
9332
  document$.subscribe(() => { lightbox.reload() });
@@ -9260,8 +9260,6 @@
9260
9260
 
9261
9261
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9262
9262
 
9263
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9264
-
9265
9263
 
9266
9264
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9267
9265
  document$.subscribe(() => { lightbox.reload() });
@@ -9287,8 +9287,6 @@
9287
9287
 
9288
9288
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9289
9289
 
9290
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9291
-
9292
9290
 
9293
9291
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9294
9292
  document$.subscribe(() => { lightbox.reload() });
@@ -9295,8 +9295,6 @@
9295
9295
 
9296
9296
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9297
9297
 
9298
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9299
-
9300
9298
 
9301
9299
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9302
9300
  document$.subscribe(() => { lightbox.reload() });
@@ -9320,8 +9320,6 @@
9320
9320
 
9321
9321
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9322
9322
 
9323
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9324
-
9325
9323
 
9326
9324
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9327
9325
  document$.subscribe(() => { lightbox.reload() });
@@ -9327,8 +9327,6 @@
9327
9327
 
9328
9328
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9329
9329
 
9330
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9331
-
9332
9330
 
9333
9331
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9334
9332
  document$.subscribe(() => { lightbox.reload() });
@@ -9352,8 +9352,6 @@
9352
9352
 
9353
9353
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9354
9354
 
9355
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9356
-
9357
9355
 
9358
9356
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9359
9357
  document$.subscribe(() => { lightbox.reload() });
@@ -9475,8 +9475,6 @@
9475
9475
 
9476
9476
  <script src="../../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9477
9477
 
9478
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9479
-
9480
9478
 
9481
9479
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9482
9480
  document$.subscribe(() => { lightbox.reload() });
@@ -9290,8 +9290,6 @@
9290
9290
 
9291
9291
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9292
9292
 
9293
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9294
-
9295
9293
 
9296
9294
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9297
9295
  document$.subscribe(() => { lightbox.reload() });
@@ -9377,8 +9377,6 @@
9377
9377
 
9378
9378
  <script src="../../../assets/javascripts/bundle.60a45f97.min.js"></script>
9379
9379
 
9380
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
9381
-
9382
9380
 
9383
9381
  <script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
9384
9382
  document$.subscribe(() => { lightbox.reload() });