nautobot 2.4.14__py3-none-any.whl → 2.4.16__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.
Files changed (434) hide show
  1. nautobot/apps/choices.py +8 -0
  2. nautobot/apps/ui.py +14 -0
  3. nautobot/core/api/views.py +2 -0
  4. nautobot/core/choices.py +4 -0
  5. nautobot/core/filters.py +21 -41
  6. nautobot/core/management/commands/check_job_approval_status.py +47 -0
  7. nautobot/core/management/commands/generate_test_data.py +1 -1
  8. nautobot/core/management/commands/migrate.py +1 -1
  9. nautobot/core/models/tree_queries.py +17 -0
  10. nautobot/core/settings.py +2 -2
  11. nautobot/core/tables.py +25 -2
  12. nautobot/core/templates/base_django.html +1 -1
  13. nautobot/core/templates/components/panel/header_extra_content_table.html +1 -1
  14. nautobot/core/templates/generic/object_list.html +17 -20
  15. nautobot/core/templates/inc/breadcrumbs.html +14 -0
  16. nautobot/core/templatetags/buttons.py +2 -4
  17. nautobot/core/templatetags/helpers.py +29 -6
  18. nautobot/core/templatetags/ui_framework.py +21 -0
  19. nautobot/core/testing/filters.py +20 -3
  20. nautobot/core/testing/forms.py +1 -1
  21. nautobot/core/tests/integration/test_filters.py +2 -2
  22. nautobot/core/tests/test_breadcrumbs.py +366 -0
  23. nautobot/core/tests/test_commands.py +40 -0
  24. nautobot/core/tests/test_filters.py +51 -1
  25. nautobot/core/tests/test_forms.py +1 -1
  26. nautobot/core/tests/test_graphql.py +4 -4
  27. nautobot/core/tests/test_titles.py +183 -0
  28. nautobot/core/tests/test_tree_queries.py +30 -0
  29. nautobot/core/tests/test_views.py +2 -2
  30. nautobot/core/tests/test_views_utils.py +1 -1
  31. nautobot/core/ui/breadcrumbs.py +538 -0
  32. nautobot/core/ui/bulk_buttons.py +53 -0
  33. nautobot/core/ui/object_detail.py +31 -8
  34. nautobot/core/ui/titles.py +127 -0
  35. nautobot/core/ui/utils.py +25 -0
  36. nautobot/core/utils/migrations.py +1 -1
  37. nautobot/core/views/__init__.py +1 -1
  38. nautobot/core/views/mixins.py +26 -1
  39. nautobot/core/views/renderers.py +20 -2
  40. nautobot/core/views/utils.py +13 -12
  41. nautobot/dcim/api/serializers.py +9 -0
  42. nautobot/dcim/choices.py +53 -0
  43. nautobot/dcim/filters/__init__.py +15 -3
  44. nautobot/dcim/forms.py +120 -7
  45. nautobot/dcim/management/commands/trace_paths.py +1 -1
  46. nautobot/dcim/migrations/0072_alter_powerfeed_options_and_more.py +97 -0
  47. nautobot/dcim/models/device_component_templates.py +8 -0
  48. nautobot/dcim/models/device_components.py +31 -12
  49. nautobot/dcim/models/devices.py +1 -1
  50. nautobot/dcim/models/power.py +171 -10
  51. nautobot/dcim/models/racks.py +7 -4
  52. nautobot/dcim/tables/devices.py +2 -0
  53. nautobot/dcim/tables/devicetypes.py +1 -0
  54. nautobot/dcim/tables/power.py +30 -2
  55. nautobot/dcim/templates/dcim/device.html +2 -2
  56. nautobot/dcim/templates/dcim/devicetype_retrieve.html +1 -214
  57. nautobot/dcim/templates/dcim/location_retrieve.html +2 -2
  58. nautobot/dcim/templates/dcim/powerfeed_edit.html +8 -0
  59. nautobot/dcim/templates/dcim/powerfeed_retrieve.html +1 -1
  60. nautobot/dcim/tests/integration/test_device_bulk_operations.py +61 -0
  61. nautobot/dcim/tests/test_api.py +24 -4
  62. nautobot/dcim/tests/test_filters.py +91 -13
  63. nautobot/dcim/tests/test_models.py +262 -0
  64. nautobot/dcim/tests/test_views.py +20 -12
  65. nautobot/dcim/utils.py +9 -0
  66. nautobot/dcim/views.py +390 -77
  67. nautobot/extras/factory.py +19 -20
  68. nautobot/extras/filters/__init__.py +3 -2
  69. nautobot/extras/filters/mixins.py +15 -1
  70. nautobot/extras/forms/__init__.py +2 -1
  71. nautobot/extras/forms/forms.py +62 -0
  72. nautobot/extras/managers.py +4 -1
  73. nautobot/extras/migrations/0125_jobresult_date_started.py +18 -0
  74. nautobot/extras/models/customfields.py +1 -2
  75. nautobot/extras/models/datasources.py +1 -2
  76. nautobot/extras/models/jobs.py +7 -3
  77. nautobot/extras/plugins/views.py +24 -1
  78. nautobot/extras/secrets/__init__.py +1 -1
  79. nautobot/extras/tables.py +21 -0
  80. nautobot/extras/templates/extras/customfield.html +2 -129
  81. nautobot/extras/templates/extras/customfield_edit.html +2 -108
  82. nautobot/extras/templates/extras/customfield_retrieve.html +129 -0
  83. nautobot/extras/templates/extras/customfield_update.html +108 -0
  84. nautobot/extras/templates/extras/inc/jobresult.html +7 -3
  85. nautobot/extras/templates/extras/jobresult.html +2 -155
  86. nautobot/extras/templates/extras/jobresult_retrieve.html +155 -0
  87. nautobot/extras/templates/extras/marketplace.html +5 -6
  88. nautobot/extras/templates/extras/note.html +2 -53
  89. nautobot/extras/templates/extras/note_retrieve.html +53 -0
  90. nautobot/extras/templates/extras/plugins_list.html +5 -6
  91. nautobot/extras/templates/extras/secretsgroup_retrieve.html +2 -29
  92. nautobot/extras/templatetags/custom_links.py +2 -2
  93. nautobot/extras/templatetags/job_buttons.py +1 -1
  94. nautobot/extras/templatetags/plugins.py +1 -1
  95. nautobot/extras/tests/integration/test_computedfields.py +2 -2
  96. nautobot/extras/tests/integration/test_customfields.py +14 -11
  97. nautobot/extras/tests/integration/test_dynamicgroups.py +1 -1
  98. nautobot/extras/tests/integration/test_notes.py +1 -1
  99. nautobot/extras/tests/integration/test_plugins.py +6 -6
  100. nautobot/extras/tests/integration/test_relationships.py +2 -2
  101. nautobot/extras/tests/test_filters.py +9 -0
  102. nautobot/extras/tests/test_forms.py +2 -2
  103. nautobot/extras/tests/test_plugins.py +14 -3
  104. nautobot/extras/tests/test_relationships.py +7 -7
  105. nautobot/extras/tests/test_views.py +172 -1
  106. nautobot/extras/urls.py +3 -59
  107. nautobot/extras/utils.py +1 -1
  108. nautobot/extras/views.py +96 -182
  109. nautobot/ipam/tables.py +8 -15
  110. nautobot/ipam/tests/migration/test_migrations.py +8 -8
  111. nautobot/ipam/tests/test_api.py +2 -2
  112. nautobot/ipam/tests/test_models.py +1 -1
  113. nautobot/project-static/docs/404.html +23 -0
  114. nautobot/project-static/docs/apps/index.html +23 -0
  115. nautobot/project-static/docs/apps/nautobot-apps.html +23 -0
  116. nautobot/project-static/docs/assets/_mkdocstrings.css +44 -6
  117. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +28 -0
  118. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +25 -0
  119. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +128 -20
  120. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +37 -4
  121. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +39 -6
  122. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +25 -0
  123. nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +24 -0
  124. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +32 -5
  125. nautobot/project-static/docs/code-reference/nautobot/apps/events.html +41 -8
  126. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +39 -7
  127. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +43 -10
  128. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +74 -59
  129. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +143 -28
  130. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +43 -12
  131. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +135 -53
  132. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +229 -36
  133. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +27 -1
  134. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +30 -1
  135. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +162 -18
  136. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +258 -51
  137. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +5987 -2620
  138. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +25 -0
  139. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +154 -55
  140. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +150 -35
  141. nautobot/project-static/docs/development/apps/api/configuration-view.html +23 -0
  142. nautobot/project-static/docs/development/apps/api/database-backend-config.html +23 -0
  143. nautobot/project-static/docs/development/apps/api/models/django-admin.html +23 -0
  144. nautobot/project-static/docs/development/apps/api/models/global-search.html +23 -0
  145. nautobot/project-static/docs/development/apps/api/models/graphql.html +23 -0
  146. nautobot/project-static/docs/development/apps/api/models/index.html +23 -0
  147. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +23 -0
  148. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +23 -0
  149. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +23 -0
  150. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +23 -0
  151. nautobot/project-static/docs/development/apps/api/platform-features/index.html +23 -0
  152. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +23 -0
  153. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +23 -0
  154. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +23 -0
  155. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +23 -0
  156. nautobot/project-static/docs/development/apps/api/platform-features/table-extensions.html +23 -0
  157. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +23 -0
  158. nautobot/project-static/docs/development/apps/api/prometheus.html +23 -0
  159. nautobot/project-static/docs/development/apps/api/setup.html +23 -0
  160. nautobot/project-static/docs/development/apps/api/testing.html +23 -0
  161. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +23 -0
  162. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +23 -0
  163. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +23 -0
  164. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +23 -0
  165. nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +23 -0
  166. nautobot/project-static/docs/development/apps/api/views/base-template.html +23 -0
  167. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +23 -0
  168. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +23 -0
  169. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +23 -0
  170. nautobot/project-static/docs/development/apps/api/views/index.html +23 -0
  171. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +23 -0
  172. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +31 -2
  173. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +23 -0
  174. nautobot/project-static/docs/development/apps/api/views/notes.html +23 -0
  175. nautobot/project-static/docs/development/apps/api/views/rest-api.html +23 -0
  176. nautobot/project-static/docs/development/apps/api/views/urls.html +23 -0
  177. nautobot/project-static/docs/development/apps/index.html +23 -0
  178. nautobot/project-static/docs/development/apps/migration/code-updates.html +23 -0
  179. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +23 -0
  180. nautobot/project-static/docs/development/apps/migration/from-v1.html +23 -0
  181. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +23 -0
  182. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +23 -0
  183. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +23 -0
  184. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +23 -0
  185. nautobot/project-static/docs/development/apps/migration/ui-component-framework/best-practices.html +26 -3
  186. nautobot/project-static/docs/development/apps/migration/ui-component-framework/breadcrumbs-titles.html +10544 -0
  187. nautobot/project-static/docs/development/apps/migration/ui-component-framework/custom-content.html +23 -0
  188. nautobot/project-static/docs/development/apps/migration/ui-component-framework/index.html +23 -0
  189. nautobot/project-static/docs/development/apps/migration/ui-component-framework/migration-steps.html +23 -0
  190. nautobot/project-static/docs/development/apps/porting-from-netbox.html +26 -3
  191. nautobot/project-static/docs/development/core/application-registry.html +23 -0
  192. nautobot/project-static/docs/development/core/best-practices.html +23 -0
  193. nautobot/project-static/docs/development/core/bootstrap-ui.html +23 -0
  194. nautobot/project-static/docs/development/core/caching.html +23 -0
  195. nautobot/project-static/docs/development/core/controllers.html +23 -0
  196. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +23 -0
  197. nautobot/project-static/docs/development/core/generic-views.html +23 -0
  198. nautobot/project-static/docs/development/core/getting-started.html +23 -0
  199. nautobot/project-static/docs/development/core/homepage.html +23 -0
  200. nautobot/project-static/docs/development/core/index.html +23 -0
  201. nautobot/project-static/docs/development/core/minikube-dev-environment-for-k8s-jobs.html +23 -0
  202. nautobot/project-static/docs/development/core/model-checklist.html +23 -0
  203. nautobot/project-static/docs/development/core/model-features.html +23 -0
  204. nautobot/project-static/docs/development/core/natural-keys.html +23 -0
  205. nautobot/project-static/docs/development/core/navigation-menu.html +23 -0
  206. nautobot/project-static/docs/development/core/release-checklist.html +23 -0
  207. nautobot/project-static/docs/development/core/role-internals.html +23 -0
  208. nautobot/project-static/docs/development/core/settings.html +23 -0
  209. nautobot/project-static/docs/development/core/style-guide.html +23 -0
  210. nautobot/project-static/docs/development/core/templates.html +23 -0
  211. nautobot/project-static/docs/development/core/testing.html +23 -0
  212. nautobot/project-static/docs/development/core/ui-component-framework.html +713 -255
  213. nautobot/project-static/docs/development/core/user-preferences.html +23 -0
  214. nautobot/project-static/docs/development/index.html +23 -0
  215. nautobot/project-static/docs/development/jobs/getting-started.html +23 -0
  216. nautobot/project-static/docs/development/jobs/index.html +23 -0
  217. nautobot/project-static/docs/development/jobs/installation.html +23 -0
  218. nautobot/project-static/docs/development/jobs/job-extensions.html +23 -0
  219. nautobot/project-static/docs/development/jobs/job-logging.html +23 -0
  220. nautobot/project-static/docs/development/jobs/job-patterns.html +23 -0
  221. nautobot/project-static/docs/development/jobs/job-structure.html +23 -0
  222. nautobot/project-static/docs/development/jobs/migration/from-v1.html +23 -0
  223. nautobot/project-static/docs/development/jobs/testing.html +23 -0
  224. nautobot/project-static/docs/index.html +23 -0
  225. nautobot/project-static/docs/media/development/core/ui-component-framework/breadcrumbs-titles-data-flow.png +0 -0
  226. nautobot/project-static/docs/media/power_distribution.png +0 -0
  227. nautobot/project-static/docs/objects.inv +0 -0
  228. nautobot/project-static/docs/overview/application_stack.html +23 -0
  229. nautobot/project-static/docs/overview/design_philosophy.html +23 -0
  230. nautobot/project-static/docs/release-notes/index.html +23 -0
  231. nautobot/project-static/docs/release-notes/version-1.0.html +23 -0
  232. nautobot/project-static/docs/release-notes/version-1.1.html +23 -0
  233. nautobot/project-static/docs/release-notes/version-1.2.html +23 -0
  234. nautobot/project-static/docs/release-notes/version-1.3.html +23 -0
  235. nautobot/project-static/docs/release-notes/version-1.4.html +23 -0
  236. nautobot/project-static/docs/release-notes/version-1.5.html +23 -0
  237. nautobot/project-static/docs/release-notes/version-1.6.html +23 -0
  238. nautobot/project-static/docs/release-notes/version-2.0.html +23 -0
  239. nautobot/project-static/docs/release-notes/version-2.1.html +23 -0
  240. nautobot/project-static/docs/release-notes/version-2.2.html +23 -0
  241. nautobot/project-static/docs/release-notes/version-2.3.html +23 -0
  242. nautobot/project-static/docs/release-notes/version-2.4.html +306 -0
  243. nautobot/project-static/docs/requirements.txt +2 -2
  244. nautobot/project-static/docs/search/search_index.json +1 -1
  245. nautobot/project-static/docs/sitemap.xml +303 -299
  246. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  247. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +23 -0
  248. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +23 -0
  249. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +23 -0
  250. nautobot/project-static/docs/user-guide/administration/configuration/index.html +23 -0
  251. nautobot/project-static/docs/user-guide/administration/configuration/redis.html +23 -0
  252. nautobot/project-static/docs/user-guide/administration/configuration/settings.html +23 -0
  253. nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +23 -0
  254. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +23 -0
  255. nautobot/project-static/docs/user-guide/administration/guides/docker.html +23 -0
  256. nautobot/project-static/docs/user-guide/administration/guides/health-checks.html +23 -0
  257. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +23 -0
  258. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +23 -0
  259. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +23 -0
  260. nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +23 -0
  261. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +23 -0
  262. nautobot/project-static/docs/user-guide/administration/guides/selinux-troubleshooting.html +23 -0
  263. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +23 -0
  264. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +23 -0
  265. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +23 -0
  266. nautobot/project-static/docs/user-guide/administration/installation/index.html +23 -0
  267. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +23 -0
  268. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +23 -0
  269. nautobot/project-static/docs/user-guide/administration/installation/services.html +23 -0
  270. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +23 -0
  271. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +23 -0
  272. nautobot/project-static/docs/user-guide/administration/security/index.html +23 -0
  273. nautobot/project-static/docs/user-guide/administration/security/notices.html +23 -0
  274. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +284 -219
  275. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +23 -0
  276. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +23 -0
  277. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +23 -0
  278. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +23 -0
  279. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +23 -0
  280. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +23 -0
  281. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +23 -0
  282. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +23 -0
  283. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +23 -0
  284. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +23 -0
  285. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +23 -0
  286. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +23 -0
  287. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +23 -0
  288. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +23 -0
  289. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +23 -0
  290. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +23 -0
  291. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +23 -0
  292. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +23 -0
  293. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +23 -0
  294. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +23 -0
  295. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +23 -0
  296. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +23 -0
  297. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +23 -0
  298. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +23 -0
  299. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +23 -0
  300. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +23 -0
  301. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +23 -0
  302. nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +23 -0
  303. nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +23 -0
  304. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +23 -0
  305. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +23 -0
  306. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +23 -0
  307. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +23 -0
  308. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +23 -0
  309. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +23 -0
  310. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +23 -0
  311. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +23 -0
  312. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +23 -0
  313. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +23 -0
  314. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +23 -0
  315. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +23 -0
  316. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +23 -0
  317. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +23 -0
  318. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +23 -0
  319. nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +23 -0
  320. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +23 -0
  321. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +23 -0
  322. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulefamily.html +23 -0
  323. nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +23 -0
  324. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +23 -0
  325. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +305 -5
  326. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +24 -1
  327. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +23 -0
  328. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +136 -3
  329. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +41 -1
  330. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +40 -0
  331. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +23 -0
  332. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +23 -0
  333. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +23 -0
  334. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +23 -0
  335. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +23 -0
  336. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +23 -0
  337. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +23 -0
  338. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +23 -0
  339. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualdevicecontext.html +23 -0
  340. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +23 -0
  341. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +23 -0
  342. nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +23 -0
  343. nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +23 -0
  344. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +23 -0
  345. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +23 -0
  346. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +23 -0
  347. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +23 -0
  348. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +23 -0
  349. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +23 -0
  350. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +23 -0
  351. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +23 -0
  352. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +23 -0
  353. nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +23 -0
  354. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +23 -0
  355. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +23 -0
  356. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +23 -0
  357. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +23 -0
  358. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +23 -0
  359. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +23 -0
  360. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +23 -0
  361. nautobot/project-static/docs/user-guide/core-data-model/wireless/index.html +23 -0
  362. nautobot/project-static/docs/user-guide/core-data-model/wireless/radioprofile.html +23 -0
  363. nautobot/project-static/docs/user-guide/core-data-model/wireless/supporteddatarate.html +23 -0
  364. nautobot/project-static/docs/user-guide/core-data-model/wireless/wirelessnetwork.html +23 -0
  365. nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +23 -0
  366. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +23 -0
  367. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +23 -0
  368. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +23 -0
  369. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +23 -0
  370. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +23 -0
  371. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +23 -0
  372. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +23 -0
  373. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +23 -0
  374. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +23 -0
  375. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +23 -0
  376. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +23 -0
  377. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +23 -0
  378. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +23 -0
  379. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +23 -0
  380. nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +23 -0
  381. nautobot/project-static/docs/user-guide/feature-guides/wireless-networks-and-controllers.html +23 -0
  382. nautobot/project-static/docs/user-guide/index.html +23 -0
  383. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +23 -0
  384. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +23 -0
  385. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +23 -0
  386. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +23 -0
  387. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +23 -0
  388. nautobot/project-static/docs/user-guide/platform-functionality/events.html +23 -0
  389. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +23 -0
  390. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +23 -0
  391. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +23 -0
  392. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +23 -0
  393. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +23 -0
  394. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +23 -0
  395. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +23 -0
  396. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +24 -1
  397. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +23 -0
  398. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +23 -0
  399. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobqueue.html +23 -0
  400. nautobot/project-static/docs/user-guide/platform-functionality/jobs/kubernetes-job-support.html +23 -0
  401. nautobot/project-static/docs/user-guide/platform-functionality/jobs/managing-jobs.html +23 -0
  402. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +23 -0
  403. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +23 -0
  404. nautobot/project-static/docs/user-guide/platform-functionality/note.html +23 -0
  405. nautobot/project-static/docs/user-guide/platform-functionality/objectmetadata.html +23 -0
  406. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +23 -0
  407. nautobot/project-static/docs/user-guide/platform-functionality/rendering-jinja-templates.html +23 -0
  408. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +23 -0
  409. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +23 -0
  410. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +23 -0
  411. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +23 -0
  412. nautobot/project-static/docs/user-guide/platform-functionality/role.html +23 -0
  413. nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +23 -0
  414. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +23 -0
  415. nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +23 -0
  416. nautobot/project-static/docs/user-guide/platform-functionality/status.html +23 -0
  417. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +23 -0
  418. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +23 -0
  419. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +23 -0
  420. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +23 -0
  421. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +23 -0
  422. nautobot/users/tests/test_api.py +2 -2
  423. nautobot/virtualization/templates/virtualization/virtualmachine.html +2 -252
  424. nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +2 -75
  425. nautobot/virtualization/templates/virtualization/virtualmachine_retrieve.html +252 -0
  426. nautobot/virtualization/templates/virtualization/virtualmachine_update.html +75 -0
  427. nautobot/virtualization/urls.py +3 -61
  428. nautobot/virtualization/views.py +48 -72
  429. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/METADATA +24 -24
  430. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/RECORD +434 -417
  431. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/LICENSE.txt +0 -0
  432. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/NOTICE +0 -0
  433. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/WHEEL +0 -0
  434. {nautobot-2.4.14.dist-info → nautobot-2.4.16.dist-info}/entry_points.txt +0 -0
@@ -9196,6 +9196,15 @@
9196
9196
  </span>
9197
9197
  </a>
9198
9198
 
9199
+ </li>
9200
+
9201
+ <li class="md-nav__item">
9202
+ <a href="#nautobot.apps.models.TreeQuerySet.count" class="md-nav__link">
9203
+ <span class="md-ellipsis">
9204
+ count
9205
+ </span>
9206
+ </a>
9207
+
9199
9208
  </li>
9200
9209
 
9201
9210
  <li class="md-nav__item">
@@ -10012,6 +10021,29 @@
10012
10021
 
10013
10022
 
10014
10023
 
10024
+
10025
+
10026
+
10027
+
10028
+
10029
+
10030
+ <li class="md-nav__item">
10031
+ <a href="../../../development/apps/migration/ui-component-framework/breadcrumbs-titles.html" class="md-nav__link">
10032
+
10033
+
10034
+
10035
+ <span class="md-ellipsis">
10036
+ Breadcrumbs and titles
10037
+
10038
+ </span>
10039
+
10040
+
10041
+ </a>
10042
+ </li>
10043
+
10044
+
10045
+
10046
+
10015
10047
  </ul>
10016
10048
  </nav>
10017
10049
 
@@ -12436,6 +12468,15 @@
12436
12468
  </span>
12437
12469
  </a>
12438
12470
 
12471
+ </li>
12472
+
12473
+ <li class="md-nav__item">
12474
+ <a href="#nautobot.apps.models.TreeQuerySet.count" class="md-nav__link">
12475
+ <span class="md-ellipsis">
12476
+ count
12477
+ </span>
12478
+ </a>
12479
+
12439
12480
  </li>
12440
12481
 
12441
12482
  <li class="md-nav__item">
@@ -12723,6 +12764,7 @@
12723
12764
 
12724
12765
 
12725
12766
 
12767
+
12726
12768
  <div class="doc doc-children">
12727
12769
 
12728
12770
 
@@ -12795,6 +12837,7 @@ class MyModel(models.Model):
12795
12837
 
12796
12838
 
12797
12839
 
12840
+
12798
12841
  <div class="doc doc-children">
12799
12842
 
12800
12843
 
@@ -12818,6 +12861,7 @@ class MyModel(models.Model):
12818
12861
 
12819
12862
  <p>Workaround for https://github.com/django-extensions/django-extensions/issues/1713.</p>
12820
12863
 
12864
+
12821
12865
  </div>
12822
12866
 
12823
12867
  </div>
@@ -12857,6 +12901,7 @@ class MyModel(models.Model):
12857
12901
 
12858
12902
 
12859
12903
 
12904
+
12860
12905
  <div class="doc doc-children">
12861
12906
 
12862
12907
 
@@ -12882,6 +12927,7 @@ class MyModel(models.Model):
12882
12927
  <p>Generic implementation that depends on the model being a BaseModel subclass or otherwise implementing our
12883
12928
  <code>natural_key_field_lookups</code> property API. Loosely based on implementation from <code>django-natural-keys</code>.</p>
12884
12929
 
12930
+
12885
12931
  </div>
12886
12932
 
12887
12933
  </div>
@@ -12931,6 +12977,7 @@ can be used for the same purpose in most cases.</p>
12931
12977
 
12932
12978
 
12933
12979
 
12980
+
12934
12981
  <div class="doc doc-children">
12935
12982
 
12936
12983
 
@@ -12957,6 +13004,7 @@ can be used for the same purpose in most cases.</p>
12957
13004
 
12958
13005
  <p>Automatic "slug" string derived from this model's natural key, suitable for use in URLs etc.</p>
12959
13006
  <p>A less naïve implementation than django-natural-keys provides by default, based around URL percent-encoding.</p>
13007
+
12960
13008
  </div>
12961
13009
 
12962
13010
  </div>
@@ -12982,6 +13030,7 @@ key in that it must be human-readable and comply with a very limited character s
12982
13030
  This value is not guaranteed to be
12983
13031
  unique although a best effort is made by appending a fragment of the primary key to the
12984
13032
  natural slug value.</p>
13033
+
12985
13034
  </div>
12986
13035
 
12987
13036
  </div>
@@ -13003,6 +13052,7 @@ natural slug value.</p>
13003
13052
  <div class="doc doc-contents ">
13004
13053
 
13005
13054
  <p>True if the record exists in the database, False if it does not.</p>
13055
+
13006
13056
  </div>
13007
13057
 
13008
13058
  </div>
@@ -13028,6 +13078,7 @@ natural slug value.</p>
13028
13078
  <p>Since CSV export for <code>natural_key_field_names</code> relies on database fields, you can override this method
13029
13079
  to provide custom handling for models with property-based natural keys.</p>
13030
13080
 
13081
+
13031
13082
  </div>
13032
13083
 
13033
13084
  </div>
@@ -13045,6 +13096,7 @@ to provide custom handling for models with property-based natural keys.</p>
13045
13096
 
13046
13097
  <p>Return the canonical URL for this object in either the UI or the REST API.</p>
13047
13098
 
13099
+
13048
13100
  </div>
13049
13101
 
13050
13102
  </div>
@@ -13066,6 +13118,7 @@ to provide custom handling for models with property-based natural keys.</p>
13066
13118
  <li>Handles variadic natural-keys (e.g. Location model - [name, parent__name, parent__parent__name, ...].)</li>
13067
13119
  </ol>
13068
13120
 
13121
+
13069
13122
  </div>
13070
13123
 
13071
13124
  </div>
@@ -13088,6 +13141,7 @@ to provide custom handling for models with property-based natural keys.</p>
13088
13141
  <p>Helper function to map a list of natural key field values to actual kwargs suitable for lookup and filtering.</p>
13089
13142
  <p>Based on <code>django-natural-keys</code> <code>NaturalKeyQuerySet.natural_key_kwargs()</code> method.</p>
13090
13143
 
13144
+
13091
13145
  </div>
13092
13146
 
13093
13147
  </div>
@@ -13111,6 +13165,7 @@ but you can also explicitly set <code>natural_key_field_names</code> on a given
13111
13165
  <p>Unlike <code>get_natural_key_def()</code>, this doesn't auto-exclude all AutoField and BigAutoField fields,
13112
13166
  but instead explicitly discounts the <code>id</code> field (only) as a candidate.</p>
13113
13167
 
13168
+
13114
13169
  </div>
13115
13170
 
13116
13171
  </div>
@@ -13134,6 +13189,7 @@ but is intended to offer an optional, simplified interface for performing this c
13134
13189
  workflow. The intended use is for user defined Jobs run via the <code>nautobot-server nbshell</code>
13135
13190
  command.</p>
13136
13191
 
13192
+
13137
13193
  </div>
13138
13194
 
13139
13195
  </div>
@@ -13173,6 +13229,7 @@ null to facilitate adding these fields to existing instances via a database migr
13173
13229
 
13174
13230
 
13175
13231
 
13232
+
13176
13233
  <div class="doc doc-children">
13177
13234
 
13178
13235
 
@@ -13196,6 +13253,7 @@ null to facilitate adding these fields to existing instances via a database migr
13196
13253
 
13197
13254
  <p>Return the changelog URL for this object.</p>
13198
13255
 
13256
+
13199
13257
  </div>
13200
13258
 
13201
13259
  </div>
@@ -13214,6 +13272,7 @@ null to facilitate adding these fields to existing instances via a database migr
13214
13272
  <p>Return a new ObjectChange representing a change made to this object, or None if the object shouldn't be logged.</p>
13215
13273
  <p>This will typically be called automatically by ChangeLoggingMiddleware.</p>
13216
13274
 
13275
+
13217
13276
  </div>
13218
13277
 
13219
13278
  </div>
@@ -13252,6 +13311,7 @@ null to facilitate adding these fields to existing instances via a database migr
13252
13311
 
13253
13312
 
13254
13313
 
13314
+
13255
13315
  <div class="doc doc-children">
13256
13316
 
13257
13317
 
@@ -13327,6 +13387,7 @@ ValueError: Conflicting values for key &quot;name&quot;: (&#39;Durham&#39;, &#39
13327
13387
 
13328
13388
 
13329
13389
 
13390
+
13330
13391
  <div class="doc doc-children">
13331
13392
 
13332
13393
 
@@ -13351,6 +13412,7 @@ ValueError: Conflicting values for key &quot;name&quot;: (&#39;Durham&#39;, &#39
13351
13412
  <p>Explicitly handle <code>exclude(composite_key="...")</code> by decomposing the composite-key into natural key parameters.</p>
13352
13413
  <p>Counterpart to BaseModel.composite_key property.</p>
13353
13414
 
13415
+
13354
13416
  </div>
13355
13417
 
13356
13418
  </div>
@@ -13369,6 +13431,7 @@ ValueError: Conflicting values for key &quot;name&quot;: (&#39;Durham&#39;, &#39
13369
13431
  <p>Explicitly handle <code>filter(composite_key="...")</code> by decomposing the composite-key into natural key parameters.</p>
13370
13432
  <p>Counterpart to BaseModel.composite_key property.</p>
13371
13433
 
13434
+
13372
13435
  </div>
13373
13436
 
13374
13437
  </div>
@@ -13387,6 +13450,7 @@ ValueError: Conflicting values for key &quot;name&quot;: (&#39;Durham&#39;, &#39
13387
13450
  <p>Helper method abstracting a common need from filter() and exclude().</p>
13388
13451
  <p>Subclasses may need to call this directly if they also have special processing of other filter/exclude params.</p>
13389
13452
 
13453
+
13390
13454
  </div>
13391
13455
 
13392
13456
  </div>
@@ -13412,7 +13476,7 @@ ValueError: Conflicting values for key &quot;name&quot;: (&#39;Durham&#39;, &#39
13412
13476
 
13413
13477
  <div class="doc doc-contents ">
13414
13478
  <p class="doc doc-class-bases">
13415
- Bases: <code><span title="django.db.models.Model">Model</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.models.ConfigContextSchemaValidationMixin" href="#nautobot.apps.models.ConfigContextSchemaValidationMixin">ConfigContextSchemaValidationMixin</a></code></p>
13479
+ Bases: <code><span title="django.db.models.Model">Model</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ConfigContextSchemaValidationMixin (nautobot.extras.models.models.ConfigContextSchemaValidationMixin)" href="#nautobot.apps.models.ConfigContextSchemaValidationMixin">ConfigContextSchemaValidationMixin</a></code></p>
13416
13480
 
13417
13481
 
13418
13482
  <p>A model which includes local configuration context data. This local data will override any inherited data from
@@ -13426,6 +13490,7 @@ ConfigContexts.</p>
13426
13490
 
13427
13491
 
13428
13492
 
13493
+
13429
13494
  <div class="doc doc-children">
13430
13495
 
13431
13496
 
@@ -13449,6 +13514,7 @@ ConfigContexts.</p>
13449
13514
 
13450
13515
  <p>Return the rendered configuration context for a device or VM.</p>
13451
13516
 
13517
+
13452
13518
  </div>
13453
13519
 
13454
13520
  </div>
@@ -13485,6 +13551,7 @@ ConfigContexts.</p>
13485
13551
 
13486
13552
 
13487
13553
 
13554
+
13488
13555
  <div class="doc doc-children">
13489
13556
 
13490
13557
 
@@ -13529,6 +13596,7 @@ ConfigContexts.</p>
13529
13596
 
13530
13597
 
13531
13598
 
13599
+
13532
13600
  <div class="doc doc-children">
13533
13601
 
13534
13602
 
@@ -13560,7 +13628,8 @@ ConfigContexts.</p>
13560
13628
 
13561
13629
  <div class="doc doc-contents ">
13562
13630
  <p class="doc doc-class-bases">
13563
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.models.querysets.RestrictedQuerySet" href="#nautobot.apps.models.RestrictedQuerySet">RestrictedQuerySet</a></code></p>
13631
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.RestrictedQuerySet (nautobot.core.models.querysets.RestrictedQuerySet)" href="#nautobot.apps.models.RestrictedQuerySet">RestrictedQuerySet</a></code></p>
13632
+
13564
13633
 
13565
13634
 
13566
13635
 
@@ -13594,6 +13663,7 @@ ConfigContexts.</p>
13594
13663
 
13595
13664
  <p>Return all <code>self.model</code> instances assigned to the given model.</p>
13596
13665
 
13666
+
13597
13667
  </div>
13598
13668
 
13599
13669
  </div>
@@ -13611,6 +13681,7 @@ ConfigContexts.</p>
13611
13681
 
13612
13682
  <p>Return all <code>self.model</code> instances assigned to the given <code>_models</code>.</p>
13613
13683
 
13684
+
13614
13685
  </div>
13615
13686
 
13616
13687
  </div>
@@ -13649,6 +13720,7 @@ ConfigContexts.</p>
13649
13720
 
13650
13721
 
13651
13722
 
13723
+
13652
13724
  <div class="doc doc-children">
13653
13725
 
13654
13726
 
@@ -13674,6 +13746,7 @@ ConfigContexts.</p>
13674
13746
  <div class="doc doc-contents ">
13675
13747
 
13676
13748
  <p>Convenience wrapper for custom field data.</p>
13749
+
13677
13750
  </div>
13678
13751
 
13679
13752
  </div>
@@ -13696,6 +13769,7 @@ ConfigContexts.</p>
13696
13769
 
13697
13770
  <p>Legacy interface to raw custom field data</p>
13698
13771
  <p>TODO(John): remove this entirely when the cf property is enhanced</p>
13772
+
13699
13773
  </div>
13700
13774
 
13701
13775
  </div>
@@ -13716,6 +13790,7 @@ ConfigContexts.</p>
13716
13790
  <p>Get a computed field for this model, lookup via key.
13717
13791
  Returns the template of this field if render is False, otherwise returns the rendered value.</p>
13718
13792
 
13793
+
13719
13794
  </div>
13720
13795
 
13721
13796
  </div>
@@ -13734,6 +13809,7 @@ Returns the template of this field if render is False, otherwise returns the ren
13734
13809
  <p>Return a dictionary of all computed fields and their rendered values for this model.
13735
13810
  Keys are the <code>key</code> value of each field. If label_as_key is True, <code>label</code> values of each field are used as keys.</p>
13736
13811
 
13812
+
13737
13813
  </div>
13738
13814
 
13739
13815
  </div>
@@ -13757,6 +13833,7 @@ Keys are the <code>key</code> value of each field. If label_as_key is True, <cod
13757
13833
  ...
13758
13834
  }</p>
13759
13835
 
13836
+
13760
13837
  </div>
13761
13838
 
13762
13839
  </div>
@@ -13782,6 +13859,7 @@ Return a dictonary of computed fields grouped by the same grouping in the form
13782
13859
  }
13783
13860
  which have advanced_ui set to True</p>
13784
13861
 
13862
+
13785
13863
  </div>
13786
13864
 
13787
13865
  </div>
@@ -13807,6 +13885,7 @@ Return a dictonary of computed fields grouped by the same grouping in the form
13807
13885
  }
13808
13886
  which have advanced_ui set to False</p>
13809
13887
 
13888
+
13810
13889
  </div>
13811
13890
 
13812
13891
  </div>
@@ -13830,6 +13909,7 @@ which have advanced_ui set to False</p>
13830
13909
  ...
13831
13910
  }</p>
13832
13911
 
13912
+
13833
13913
  </div>
13834
13914
 
13835
13915
  </div>
@@ -13855,6 +13935,7 @@ Return a dictonary of custom fields grouped by the same grouping in the form
13855
13935
  }
13856
13936
  which have advanced_ui set to True</p>
13857
13937
 
13938
+
13858
13939
  </div>
13859
13940
 
13860
13941
  </div>
@@ -13880,6 +13961,7 @@ Return a dictonary of custom fields grouped by the same grouping in the form
13880
13961
  }
13881
13962
  which have advanced_ui set to False</p>
13882
13963
 
13964
+
13883
13965
  </div>
13884
13966
 
13885
13967
  </div>
@@ -13897,6 +13979,7 @@ which have advanced_ui set to False</p>
13897
13979
 
13898
13980
  <p>Return a dictionary of custom fields for a single object in the form {<field>: value}.</p>
13899
13981
 
13982
+
13900
13983
  </div>
13901
13984
 
13902
13985
  </div>
@@ -13916,6 +13999,7 @@ which have advanced_ui set to False</p>
13916
13999
  Return a dictionary of custom fields for a single object in the form {<field>: value}
13917
14000
  which have advanced_ui set to True</p>
13918
14001
 
14002
+
13919
14003
  </div>
13920
14004
 
13921
14005
  </div>
@@ -13935,6 +14019,7 @@ which have advanced_ui set to True</p>
13935
14019
  Return a dictionary of custom fields for a single object in the form {<field>: value}
13936
14020
  which have advanced_ui set to False</p>
13937
14021
 
14022
+
13938
14023
  </div>
13939
14024
 
13940
14025
  </div>
@@ -13953,6 +14038,7 @@ which have advanced_ui set to False</p>
13953
14038
  <p>Return a boolean indicating whether or not this content type has computed fields associated with it.
13954
14039
  This can also check whether the advanced_ui attribute is True or False for UI display purposes.</p>
13955
14040
 
14041
+
13956
14042
  </div>
13957
14043
 
13958
14044
  </div>
@@ -13994,6 +14080,7 @@ should be set as a string in the form <code>&lt;app_label&gt;.&lt;model_name&gt;
13994
14080
 
13995
14081
 
13996
14082
 
14083
+
13997
14084
  <div class="doc doc-children">
13998
14085
 
13999
14086
 
@@ -14020,6 +14107,7 @@ with the <code>object</code> key within <code>self.context</code>, e.g. <code>se
14020
14107
  prevent saving model instance changes, and propagate messages to the user. For convenience,
14021
14108
  <code>self.validation_error(&lt;message&gt;)</code> may be called to raise a ValidationError.</p>
14022
14109
 
14110
+
14023
14111
  </div>
14024
14112
 
14025
14113
  </div>
@@ -14038,6 +14126,7 @@ prevent saving model instance changes, and propagate messages to the user. For c
14038
14126
  <p>Convenience method for raising <code>django.core.exceptions.ValidationError</code> which is required in order to
14039
14127
  trigger validation error messages which are propagated to the user.</p>
14040
14128
 
14129
+
14041
14130
  </div>
14042
14131
 
14043
14132
  </div>
@@ -14083,6 +14172,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14083
14172
 
14084
14173
 
14085
14174
 
14175
+
14086
14176
  <div class="doc doc-children">
14087
14177
 
14088
14178
 
@@ -14108,6 +14198,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14108
14198
  <div class="doc doc-contents ">
14109
14199
 
14110
14200
  <p>Return a queryset of (cached) <code>DynamicGroup</code> objects this instance is a member of.</p>
14201
+
14111
14202
  </div>
14112
14203
 
14113
14204
  </div>
@@ -14129,6 +14220,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14129
14220
  <div class="doc doc-contents ">
14130
14221
 
14131
14222
  <p>Deprecated - use <code>self.dynamic_groups</code> instead.</p>
14223
+
14132
14224
  </div>
14133
14225
 
14134
14226
  </div>
@@ -14150,6 +14242,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14150
14242
  <div class="doc doc-contents ">
14151
14243
 
14152
14244
  <p>Deprecated - use <code>list(self.dynamic_groups)</code> instead.</p>
14245
+
14153
14246
  </div>
14154
14247
 
14155
14248
  </div>
@@ -14171,6 +14264,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14171
14264
  <div class="doc doc-contents ">
14172
14265
 
14173
14266
  <p>Deprecated - use <code>list(self.dynamic_groups)</code> instead.</p>
14267
+
14174
14268
  </div>
14175
14269
 
14176
14270
  </div>
@@ -14190,6 +14284,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14190
14284
 
14191
14285
  <p>Return the dynamic groups URL for a given instance.</p>
14192
14286
 
14287
+
14193
14288
  </div>
14194
14289
 
14195
14290
  </div>
@@ -14215,7 +14310,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14215
14310
 
14216
14311
  <div class="doc doc-contents ">
14217
14312
  <p class="doc doc-class-bases">
14218
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.DynamicGroupMixin" href="#nautobot.apps.models.DynamicGroupMixin">DynamicGroupMixin</a></code>, <code><span title="django.db.models.Model">Model</span></code></p>
14313
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.DynamicGroupMixin (nautobot.extras.models.mixins.DynamicGroupMixin)" href="#nautobot.apps.models.DynamicGroupMixin">DynamicGroupMixin</a></code>, <code><span title="django.db.models.Model">Model</span></code></p>
14219
14314
 
14220
14315
 
14221
14316
  <p>Add this to models to make them fully support Dynamic Groups.</p>
@@ -14228,6 +14323,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14228
14323
 
14229
14324
 
14230
14325
 
14326
+
14231
14327
  <div class="doc doc-children">
14232
14328
 
14233
14329
 
@@ -14259,7 +14355,7 @@ to the new DynamicGroupsModelMixin in its place.</p>
14259
14355
 
14260
14356
  <div class="doc doc-contents ">
14261
14357
  <p class="doc doc-class-bases">
14262
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.models.query_functions.JSONBAgg" href="#nautobot.apps.models.JSONBAgg">JSONBAgg</a></code></p>
14358
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.JSONBAgg (nautobot.core.models.query_functions.JSONBAgg)" href="#nautobot.apps.models.JSONBAgg">JSONBAgg</a></code></p>
14263
14359
 
14264
14360
 
14265
14361
  <p>JSONBAgg is a builtin aggregation function which means it includes the use of a GROUP BY clause.
@@ -14274,6 +14370,7 @@ incorrect. This subclass overrides the Django ORM aggregation control to remove
14274
14370
 
14275
14371
 
14276
14372
 
14373
+
14277
14374
  <div class="doc doc-children">
14278
14375
 
14279
14376
 
@@ -14319,6 +14416,7 @@ schemes specified in the configuration.</p>
14319
14416
 
14320
14417
 
14321
14418
 
14419
+
14322
14420
  <div class="doc doc-children">
14323
14421
 
14324
14422
 
@@ -14342,6 +14440,7 @@ schemes specified in the configuration.</p>
14342
14440
 
14343
14441
  <p>Dynamically fetch schemes each time it's accessed.</p>
14344
14442
 
14443
+
14345
14444
  </div>
14346
14445
 
14347
14446
  </div>
@@ -14380,6 +14479,7 @@ schemes specified in the configuration.</p>
14380
14479
 
14381
14480
 
14382
14481
 
14482
+
14383
14483
  <div class="doc doc-children">
14384
14484
 
14385
14485
 
@@ -14411,7 +14511,7 @@ schemes specified in the configuration.</p>
14411
14511
 
14412
14512
  <div class="doc doc-contents ">
14413
14513
  <p class="doc doc-class-bases">
14414
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.models.fields.ForeignKeyWithAutoRelatedName" href="#nautobot.apps.models.ForeignKeyWithAutoRelatedName">ForeignKeyWithAutoRelatedName</a></code></p>
14514
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ForeignKeyWithAutoRelatedName (nautobot.core.models.fields.ForeignKeyWithAutoRelatedName)" href="#nautobot.apps.models.ForeignKeyWithAutoRelatedName">ForeignKeyWithAutoRelatedName</a></code></p>
14415
14515
 
14416
14516
 
14417
14517
  <p>An abstract model field that automatically restricts ForeignKey options based on content_types.</p>
@@ -14436,6 +14536,7 @@ while role_1 &amp; role_2 are both available for the Location model.</p>
14436
14536
 
14437
14537
 
14438
14538
 
14539
+
14439
14540
  <div class="doc doc-children">
14440
14541
 
14441
14542
 
@@ -14459,6 +14560,7 @@ while role_1 &amp; role_2 are both available for the Location model.</p>
14459
14560
 
14460
14561
  <p>Return a prepped formfield for use in model forms.</p>
14461
14562
 
14563
+
14462
14564
  </div>
14463
14565
 
14464
14566
  </div>
@@ -14480,6 +14582,7 @@ rather than via the more obvious <code>content_types=ContentType.objects.get_for
14480
14582
  because the latter approach would involve a database query, and in some cases
14481
14583
  (most notably FilterSet definition) this function is called <strong>before</strong> database migrations can be run.</p>
14482
14584
 
14585
+
14483
14586
  </div>
14484
14587
 
14485
14588
  </div>
@@ -14521,6 +14624,7 @@ because the latter approach would involve a database query, and in some cases
14521
14624
 
14522
14625
 
14523
14626
 
14627
+
14524
14628
  <div class="doc doc-children">
14525
14629
 
14526
14630
 
@@ -14567,6 +14671,7 @@ Replicates ArrayField's base field validation.</p>
14567
14671
 
14568
14672
 
14569
14673
 
14674
+
14570
14675
  <div class="doc doc-children">
14571
14676
 
14572
14677
 
@@ -14602,6 +14707,7 @@ Replicates ArrayField's base field validation.</p>
14602
14707
  <li>A dict of keyword arguments.</li>
14603
14708
  </ul>
14604
14709
  </details>
14710
+
14605
14711
  </div>
14606
14712
 
14607
14713
  </div>
@@ -14619,6 +14725,7 @@ Replicates ArrayField's base field validation.</p>
14619
14725
 
14620
14726
  <p>Return a django.forms.Field instance for this field.</p>
14621
14727
 
14728
+
14622
14729
  </div>
14623
14730
 
14624
14731
  </div>
@@ -14636,6 +14743,7 @@ Replicates ArrayField's base field validation.</p>
14636
14743
 
14637
14744
  <p>Perform preliminary non-db specific value checks and conversions.</p>
14638
14745
 
14746
+
14639
14747
  </div>
14640
14748
 
14641
14749
  </div>
@@ -14654,6 +14762,7 @@ Replicates ArrayField's base field validation.</p>
14654
14762
  <p>Runs all validators against <code>value</code> and raise ValidationError if necessary.
14655
14763
  Some validators can't be created at field initialization time.</p>
14656
14764
 
14765
+
14657
14766
  </div>
14658
14767
 
14659
14768
  </div>
@@ -14672,6 +14781,7 @@ Some validators can't be created at field initialization time.</p>
14672
14781
  <p>Convert <code>value</code> into JSON, raising django.core.exceptions.ValidationError
14673
14782
  if the data can't be converted. Return the converted value.</p>
14674
14783
 
14784
+
14675
14785
  </div>
14676
14786
 
14677
14787
  </div>
@@ -14689,6 +14799,7 @@ if the data can't be converted. Return the converted value.</p>
14689
14799
 
14690
14800
  <p>Validate <code>value</code> and raise ValidationError if necessary.</p>
14691
14801
 
14802
+
14692
14803
  </div>
14693
14804
 
14694
14805
  </div>
@@ -14707,6 +14818,7 @@ if the data can't be converted. Return the converted value.</p>
14707
14818
  <p>Return a string value of this field from the passed obj.
14708
14819
  This is used by the serialization framework.</p>
14709
14820
 
14821
+
14710
14822
  </div>
14711
14823
 
14712
14824
  </div>
@@ -14749,6 +14861,7 @@ This is used by the serialization framework.</p>
14749
14861
 
14750
14862
 
14751
14863
 
14864
+
14752
14865
  <div class="doc doc-children">
14753
14866
 
14754
14867
 
@@ -14793,6 +14906,7 @@ This is used by the serialization framework.</p>
14793
14906
 
14794
14907
 
14795
14908
 
14909
+
14796
14910
  <div class="doc doc-children">
14797
14911
 
14798
14912
 
@@ -14824,7 +14938,7 @@ This is used by the serialization framework.</p>
14824
14938
 
14825
14939
  <div class="doc doc-contents ">
14826
14940
  <p class="doc doc-class-bases">
14827
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.change_logging.ChangeLoggedModel" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.ContactMixin" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.customfields.CustomFieldModel" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.DynamicGroupsModelMixin" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.NotesMixin" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.relationships.RelationshipModel" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.SavedViewMixin" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.models.BaseModel" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
14941
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ChangeLoggedModel (nautobot.extras.models.change_logging.ChangeLoggedModel)" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ContactMixin (nautobot.extras.models.mixins.ContactMixin)" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.CustomFieldModel (nautobot.extras.models.customfields.CustomFieldModel)" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.DynamicGroupsModelMixin (nautobot.extras.models.mixins.DynamicGroupsModelMixin)" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.NotesMixin (nautobot.extras.models.mixins.NotesMixin)" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.RelationshipModel (nautobot.extras.models.relationships.RelationshipModel)" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.SavedViewMixin (nautobot.extras.models.mixins.SavedViewMixin)" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseModel (nautobot.core.models.BaseModel)" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
14828
14942
 
14829
14943
 
14830
14944
  <p>This abstract base properties model contains fields and functionality that are
@@ -14838,6 +14952,7 @@ shared amongst models that requires these fields: name, color, content_types and
14838
14952
 
14839
14953
 
14840
14954
 
14955
+
14841
14956
  <div class="doc doc-children">
14842
14957
 
14843
14958
 
@@ -14884,6 +14999,7 @@ shared amongst models that requires these fields: name, color, content_types and
14884
14999
 
14885
15000
 
14886
15001
 
15002
+
14887
15003
  <div class="doc doc-children">
14888
15004
 
14889
15005
 
@@ -14907,6 +15023,7 @@ shared amongst models that requires these fields: name, color, content_types and
14907
15023
 
14908
15024
  <p>Generate a naturalized value from the target field</p>
14909
15025
 
15026
+
14910
15027
  </div>
14911
15028
 
14912
15029
  </div>
@@ -14943,6 +15060,7 @@ shared amongst models that requires these fields: name, color, content_types and
14943
15060
 
14944
15061
 
14945
15062
 
15063
+
14946
15064
  <div class="doc doc-children">
14947
15065
 
14948
15066
 
@@ -14968,6 +15086,7 @@ shared amongst models that requires these fields: name, color, content_types and
14968
15086
  <div class="doc doc-contents ">
14969
15087
 
14970
15088
  <p>Return a <code>Notes</code> queryset for this instance.</p>
15089
+
14971
15090
  </div>
14972
15091
 
14973
15092
  </div>
@@ -14987,6 +15106,7 @@ shared amongst models that requires these fields: name, color, content_types and
14987
15106
 
14988
15107
  <p>Return the notes URL for a given instance.</p>
14989
15108
 
15109
+
14990
15110
  </div>
14991
15111
 
14992
15112
  </div>
@@ -15012,7 +15132,7 @@ shared amongst models that requires these fields: name, color, content_types and
15012
15132
 
15013
15133
  <div class="doc doc-contents ">
15014
15134
  <p class="doc doc-class-bases">
15015
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.change_logging.ChangeLoggedModel" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.ContactMixin" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.customfields.CustomFieldModel" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.DynamicGroupsModelMixin" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.NotesMixin" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.relationships.RelationshipModel" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.SavedViewMixin" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.models.BaseModel" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
15135
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ChangeLoggedModel (nautobot.extras.models.change_logging.ChangeLoggedModel)" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ContactMixin (nautobot.extras.models.mixins.ContactMixin)" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.CustomFieldModel (nautobot.extras.models.customfields.CustomFieldModel)" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.DynamicGroupsModelMixin (nautobot.extras.models.mixins.DynamicGroupsModelMixin)" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.NotesMixin (nautobot.extras.models.mixins.NotesMixin)" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.RelationshipModel (nautobot.extras.models.relationships.RelationshipModel)" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.SavedViewMixin (nautobot.extras.models.mixins.SavedViewMixin)" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseModel (nautobot.core.models.BaseModel)" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
15016
15136
 
15017
15137
 
15018
15138
  <p>Base abstract model for all organizational models.</p>
@@ -15030,6 +15150,7 @@ Device Role, Rack Group, Status, Manufacturer, and Platform.</p>
15030
15150
 
15031
15151
 
15032
15152
 
15153
+
15033
15154
  <div class="doc doc-children">
15034
15155
 
15035
15156
 
@@ -15061,7 +15182,7 @@ Device Role, Rack Group, Status, Manufacturer, and Platform.</p>
15061
15182
 
15062
15183
  <div class="doc doc-contents ">
15063
15184
  <p class="doc doc-class-bases">
15064
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.change_logging.ChangeLoggedModel" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.ContactMixin" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.customfields.CustomFieldModel" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.DynamicGroupsModelMixin" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.NotesMixin" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.relationships.RelationshipModel" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.models.mixins.SavedViewMixin" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.models.BaseModel" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
15185
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ChangeLoggedModel (nautobot.extras.models.change_logging.ChangeLoggedModel)" href="#nautobot.apps.models.ChangeLoggedModel">ChangeLoggedModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ContactMixin (nautobot.extras.models.mixins.ContactMixin)" href="#nautobot.apps.models.ContactMixin">ContactMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.CustomFieldModel (nautobot.extras.models.customfields.CustomFieldModel)" href="#nautobot.apps.models.CustomFieldModel">CustomFieldModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.DynamicGroupsModelMixin (nautobot.extras.models.mixins.DynamicGroupsModelMixin)" href="#nautobot.apps.models.DynamicGroupsModelMixin">DynamicGroupsModelMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.NotesMixin (nautobot.extras.models.mixins.NotesMixin)" href="#nautobot.apps.models.NotesMixin">NotesMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.RelationshipModel (nautobot.extras.models.relationships.RelationshipModel)" href="#nautobot.apps.models.RelationshipModel">RelationshipModel</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.SavedViewMixin (nautobot.extras.models.mixins.SavedViewMixin)" href="#nautobot.apps.models.SavedViewMixin">SavedViewMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseModel (nautobot.core.models.BaseModel)" href="#nautobot.apps.models.BaseModel">BaseModel</a></code></p>
15065
15186
 
15066
15187
 
15067
15188
  <p>Base abstract model for all primary models.</p>
@@ -15078,6 +15199,7 @@ tangible or logical resources on the network, or within the organization.</p>
15078
15199
 
15079
15200
 
15080
15201
 
15202
+
15081
15203
  <div class="doc doc-children">
15082
15204
 
15083
15205
 
@@ -15122,6 +15244,7 @@ tangible or logical resources on the network, or within the organization.</p>
15122
15244
 
15123
15245
 
15124
15246
 
15247
+
15125
15248
  <div class="doc doc-children">
15126
15249
 
15127
15250
 
@@ -15157,7 +15280,7 @@ tangible or logical resources on the network, or within the organization.</p>
15157
15280
  <tbody>
15158
15281
  <tr class="doc-section-item">
15159
15282
  <td>
15160
- <code>dict</code>
15283
+ <code><span title="dict">dict</span></code>
15161
15284
  </td>
15162
15285
  <td>
15163
15286
  <div class="doc-md-description">
@@ -15181,6 +15304,7 @@ tangible or logical resources on the network, or within the organization.</p>
15181
15304
  </tbody>
15182
15305
  </table>
15183
15306
 
15307
+
15184
15308
  </div>
15185
15309
 
15186
15310
  </div>
@@ -15211,7 +15335,7 @@ tangible or logical resources on the network, or within the organization.</p>
15211
15335
  <tbody>
15212
15336
  <tr class="doc-section-item">
15213
15337
  <td>
15214
- <code>dict</code>
15338
+ <code><span title="dict">dict</span></code>
15215
15339
  </td>
15216
15340
  <td>
15217
15341
  <div class="doc-md-description">
@@ -15245,6 +15369,7 @@ tangible or logical resources on the network, or within the organization.</p>
15245
15369
  </tbody>
15246
15370
  </table>
15247
15371
 
15372
+
15248
15373
  </div>
15249
15374
 
15250
15375
  </div>
@@ -15263,6 +15388,7 @@ tangible or logical resources on the network, or within the organization.</p>
15263
15388
  <p>Same docstring as get_relationships_data() above except this only returns relationships
15264
15389
  where advanced_ui==True for displaying in the 'Advanced' tab on the object's page</p>
15265
15390
 
15391
+
15266
15392
  </div>
15267
15393
 
15268
15394
  </div>
@@ -15281,6 +15407,7 @@ where advanced_ui==True for displaying in the 'Advanced' tab on the object's pag
15281
15407
  <p>Same docstring as get_relationships_data() above except this only returns relationships
15282
15408
  where advanced_ui==False for displaying in the main object detail tab on the object's page</p>
15283
15409
 
15410
+
15284
15411
  </div>
15285
15412
 
15286
15413
  </div>
@@ -15298,6 +15425,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15298
15425
 
15299
15426
  <p>Alternative version of get_relationships().</p>
15300
15427
 
15428
+
15301
15429
  </div>
15302
15430
 
15303
15431
  </div>
@@ -15335,7 +15463,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15335
15463
  <code>output_for</code>
15336
15464
  </td>
15337
15465
  <td>
15338
- <code>str</code>
15466
+ <code><span title="str">str</span></code>
15339
15467
  </td>
15340
15468
  <td>
15341
15469
  <div class="doc-md-description">
@@ -15351,7 +15479,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15351
15479
  <code>initial_data</code>
15352
15480
  </td>
15353
15481
  <td>
15354
- <code>dict</code>
15482
+ <code><span title="dict">dict</span></code>
15355
15483
  </td>
15356
15484
  <td>
15357
15485
  <div class="doc-md-description">
@@ -15367,7 +15495,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15367
15495
  <code>relationships_key_specified</code>
15368
15496
  </td>
15369
15497
  <td>
15370
- <code>bool</code>
15498
+ <code><span title="bool">bool</span></code>
15371
15499
  </td>
15372
15500
  <td>
15373
15501
  <div class="doc-md-description">
@@ -15383,7 +15511,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15383
15511
  <code>instance</code>
15384
15512
  </td>
15385
15513
  <td>
15386
- <code>Optional[<a class="autorefs autorefs-internal" title="nautobot.core.models.BaseModel" href="#nautobot.apps.models.BaseModel">BaseModel</a>]</code>
15514
+ <code><span title="Optional">Optional</span>[<a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseModel (nautobot.core.models.BaseModel)" href="#nautobot.apps.models.BaseModel">BaseModel</a>]</code>
15387
15515
  </td>
15388
15516
  <td>
15389
15517
  <div class="doc-md-description">
@@ -15399,6 +15527,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15399
15527
  <p>Returns:
15400
15528
  (list[dict]): List of field error dicts if any are found</p>
15401
15529
 
15530
+
15402
15531
  </div>
15403
15532
 
15404
15533
  </div>
@@ -15424,7 +15553,8 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15424
15553
 
15425
15554
  <div class="doc doc-contents ">
15426
15555
  <p class="doc doc-class-bases">
15427
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.models.querysets.CompositeKeyQuerySetMixin" href="#nautobot.apps.models.CompositeKeyQuerySetMixin">CompositeKeyQuerySetMixin</a></code>, <code><span title="django.db.models.QuerySet">QuerySet</span></code></p>
15556
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.CompositeKeyQuerySetMixin (nautobot.core.models.querysets.CompositeKeyQuerySetMixin)" href="#nautobot.apps.models.CompositeKeyQuerySetMixin">CompositeKeyQuerySetMixin</a></code>, <code><span title="django.db.models.QuerySet">QuerySet</span></code></p>
15557
+
15428
15558
 
15429
15559
 
15430
15560
 
@@ -15476,7 +15606,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15476
15606
  <code>user</code>
15477
15607
  </td>
15478
15608
  <td>
15479
- <code>User</code>
15609
+ <code><span title="User">User</span></code>
15480
15610
  </td>
15481
15611
  <td>
15482
15612
  <div class="doc-md-description">
@@ -15508,7 +15638,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15508
15638
  <code>pk</code>
15509
15639
  </td>
15510
15640
  <td>
15511
- <code>uuid</code>
15641
+ <code><span title="uuid">uuid</span></code>
15512
15642
  </td>
15513
15643
  <td>
15514
15644
  <div class="doc-md-description">
@@ -15524,7 +15654,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15524
15654
  <code>action</code>
15525
15655
  </td>
15526
15656
  <td>
15527
- <code>str</code>
15657
+ <code><span title="str">str</span></code>
15528
15658
  </td>
15529
15659
  <td>
15530
15660
  <div class="doc-md-description">
@@ -15550,7 +15680,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15550
15680
  <tbody>
15551
15681
  <tr class="doc-section-item">
15552
15682
  <td>
15553
- <code>bool</code>
15683
+ <code><span title="bool">bool</span></code>
15554
15684
  </td>
15555
15685
  <td>
15556
15686
  <div class="doc-md-description">
@@ -15561,6 +15691,7 @@ where advanced_ui==False for displaying in the main object detail tab on the obj
15561
15691
  </tbody>
15562
15692
  </table>
15563
15693
 
15694
+
15564
15695
  </div>
15565
15696
 
15566
15697
  </div>
@@ -15601,7 +15732,7 @@ in the Django <code>distinct()</code> documentation at https://docs.djangoprojec
15601
15732
  <code>*fields</code>
15602
15733
  </td>
15603
15734
  <td>
15604
- <code>str</code>
15735
+ <code><span title="str">str</span></code>
15605
15736
  </td>
15606
15737
  <td>
15607
15738
  <div class="doc-md-description">
@@ -15617,7 +15748,7 @@ in the Django <code>distinct()</code> documentation at https://docs.djangoprojec
15617
15748
  <code>flat</code>
15618
15749
  </td>
15619
15750
  <td>
15620
- <code>bool</code>
15751
+ <code><span title="bool">bool</span></code>
15621
15752
  </td>
15622
15753
  <td>
15623
15754
  <div class="doc-md-description">
@@ -15634,7 +15765,7 @@ Defaults to False.</p>
15634
15765
  <code>named</code>
15635
15766
  </td>
15636
15767
  <td>
15637
- <code>bool</code>
15768
+ <code><span title="bool">bool</span></code>
15638
15769
  </td>
15639
15770
  <td>
15640
15771
  <div class="doc-md-description">
@@ -15671,6 +15802,7 @@ Defaults to False.</p>
15671
15802
  </tbody>
15672
15803
  </table>
15673
15804
 
15805
+
15674
15806
  </div>
15675
15807
 
15676
15808
  </div>
@@ -15691,6 +15823,7 @@ permission.</p>
15691
15823
  <p>:param user: User instance
15692
15824
  :param action: The action which must be permitted (e.g. "view" for "dcim.view_location"); default is 'view'</p>
15693
15825
 
15826
+
15694
15827
  </div>
15695
15828
 
15696
15829
  </div>
@@ -15729,6 +15862,7 @@ permission.</p>
15729
15862
 
15730
15863
 
15731
15864
 
15865
+
15732
15866
  <div class="doc doc-children">
15733
15867
 
15734
15868
 
@@ -15760,7 +15894,7 @@ permission.</p>
15760
15894
 
15761
15895
  <div class="doc doc-contents ">
15762
15896
  <p class="doc doc-class-bases">
15763
- Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.models.fields.ForeignKeyLimitedByContentTypes" href="#nautobot.apps.models.ForeignKeyLimitedByContentTypes">ForeignKeyLimitedByContentTypes</a></code></p>
15897
+ Bases: <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.ForeignKeyLimitedByContentTypes (nautobot.core.models.fields.ForeignKeyLimitedByContentTypes)" href="#nautobot.apps.models.ForeignKeyLimitedByContentTypes">ForeignKeyLimitedByContentTypes</a></code></p>
15764
15898
 
15765
15899
 
15766
15900
  <p>Model database field that automatically limits custom choices.</p>
@@ -15776,6 +15910,7 @@ permission.</p>
15776
15910
 
15777
15911
 
15778
15912
 
15913
+
15779
15914
  <div class="doc doc-children">
15780
15915
 
15781
15916
 
@@ -15806,6 +15941,7 @@ methods are hooked in. So in short this method asserts that any time a
15806
15941
  <code>.get_status_display()</code> and a <code>.get_status_color()</code> method without
15807
15942
  having to define it on the model yourself.</p>
15808
15943
 
15944
+
15809
15945
  </div>
15810
15946
 
15811
15947
  </div>
@@ -15845,6 +15981,7 @@ having to define it on the model yourself.</p>
15845
15981
 
15846
15982
 
15847
15983
 
15984
+
15848
15985
  <div class="doc doc-children">
15849
15986
 
15850
15987
 
@@ -15889,6 +16026,7 @@ having to define it on the model yourself.</p>
15889
16026
 
15890
16027
 
15891
16028
 
16029
+
15892
16030
  <div class="doc doc-children">
15893
16031
 
15894
16032
 
@@ -15920,7 +16058,7 @@ having to define it on the model yourself.</p>
15920
16058
 
15921
16059
  <div class="doc doc-contents ">
15922
16060
  <p class="doc doc-class-bases">
15923
- Bases: <code><span title="taggit.managers._TaggableManager">_TaggableManager</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.models.managers.BaseManager" href="#nautobot.apps.models.BaseManager">BaseManager</a></code></p>
16061
+ Bases: <code><span title="taggit.managers._TaggableManager">_TaggableManager</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseManager (nautobot.core.models.managers.BaseManager)" href="#nautobot.apps.models.BaseManager">BaseManager</a></code></p>
15924
16062
 
15925
16063
 
15926
16064
  <p>Manager class for model 'tags' fields.</p>
@@ -15933,6 +16071,7 @@ having to define it on the model yourself.</p>
15933
16071
 
15934
16072
 
15935
16073
 
16074
+
15936
16075
  <div class="doc doc-children">
15937
16076
 
15938
16077
 
@@ -15964,7 +16103,7 @@ having to define it on the model yourself.</p>
15964
16103
 
15965
16104
  <div class="doc doc-contents ">
15966
16105
  <p class="doc doc-class-bases">
15967
- Bases: <code><span title="tree_queries.query.TreeManager">TreeManager</span></code>, <code><span title="nautobot.core.models.BaseManager.from_queryset">from_queryset</span>(<a class="autorefs autorefs-internal" title="nautobot.core.models.tree_queries.TreeQuerySet" href="#nautobot.apps.models.TreeQuerySet">TreeQuerySet</a>)</code></p>
16106
+ Bases: <code><span title="tree_queries.query.TreeManager">TreeManager</span></code>, <code><span title="nautobot.core.models.BaseManager.from_queryset">from_queryset</span>(<a class="autorefs autorefs-internal" title="nautobot.apps.models.TreeQuerySet (nautobot.core.models.tree_queries.TreeQuerySet)" href="#nautobot.apps.models.TreeQuerySet">TreeQuerySet</a>)</code></p>
15968
16107
 
15969
16108
 
15970
16109
  <p>Extend django-tree-queries' TreeManager to incorporate RestrictedQuerySet.</p>
@@ -15977,6 +16116,7 @@ having to define it on the model yourself.</p>
15977
16116
 
15978
16117
 
15979
16118
 
16119
+
15980
16120
  <div class="doc doc-children">
15981
16121
 
15982
16122
 
@@ -16003,6 +16143,7 @@ having to define it on the model yourself.</p>
16003
16143
 
16004
16144
  <p>Cacheable version of <code>TreeQuerySet.max_tree_depth()</code>.</p>
16005
16145
  <p>Generally TreeManagers are persistent objects while TreeQuerySets are not, hence the difference in behavior.</p>
16146
+
16006
16147
  </div>
16007
16148
 
16008
16149
  </div>
@@ -16043,6 +16184,7 @@ having to define it on the model yourself.</p>
16043
16184
 
16044
16185
 
16045
16186
 
16187
+
16046
16188
  <div class="doc doc-children">
16047
16189
 
16048
16190
 
@@ -16069,6 +16211,7 @@ having to define it on the model yourself.</p>
16069
16211
 
16070
16212
  <p>By default, TreeModels display their full ancestry for clarity.</p>
16071
16213
  <p>As this is an expensive thing to calculate, we cache it for a few seconds in the case of repeated lookups.</p>
16214
+
16072
16215
  </div>
16073
16216
 
16074
16217
  </div>
@@ -16096,7 +16239,7 @@ having to define it on the model yourself.</p>
16096
16239
 
16097
16240
  <div class="doc doc-contents ">
16098
16241
  <p class="doc doc-class-bases">
16099
- Bases: <code><span title="tree_queries.query.TreeQuerySet">TreeQuerySet</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.models.querysets.RestrictedQuerySet" href="#nautobot.apps.models.RestrictedQuerySet">RestrictedQuerySet</a></code></p>
16242
+ Bases: <code><span title="tree_queries.query.TreeQuerySet">TreeQuerySet</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.apps.models.RestrictedQuerySet (nautobot.core.models.querysets.RestrictedQuerySet)" href="#nautobot.apps.models.RestrictedQuerySet">RestrictedQuerySet</a></code></p>
16100
16243
 
16101
16244
 
16102
16245
  <p>Combine django-tree-queries' TreeQuerySet with our RestrictedQuerySet for permissions enforcement.</p>
@@ -16109,6 +16252,7 @@ having to define it on the model yourself.</p>
16109
16252
 
16110
16253
 
16111
16254
 
16255
+
16112
16256
  <div class="doc doc-children">
16113
16257
 
16114
16258
 
@@ -16134,6 +16278,29 @@ having to define it on the model yourself.</p>
16134
16278
  <p>Dynamically computes ancestors either through the tree or through the <code>parent</code> foreign key depending on whether
16135
16279
  tree fields are present on <code>of</code>.</p>
16136
16280
 
16281
+
16282
+ </div>
16283
+
16284
+ </div>
16285
+
16286
+ <div class="doc doc-object doc-function">
16287
+
16288
+
16289
+ <h3 id="nautobot.apps.models.TreeQuerySet.count" class="doc doc-heading">
16290
+ <code class="highlight language-python"><span class="n">count</span><span class="p">()</span></code>
16291
+
16292
+ <a href="#nautobot.apps.models.TreeQuerySet.count" class="headerlink" title="Permanent link">&para;</a></h3>
16293
+
16294
+
16295
+ <div class="doc doc-contents ">
16296
+
16297
+ <p>Custom count method for optimization purposes.</p>
16298
+ <p>TreeQuerySet instances in Nautobot are by default with tree fields. So if somewhere tree fields aren't
16299
+ explicitly removed from the queryset and count is called, the whole tree is calculated. Since this is not
16300
+ needed, this implementation calls <code>without_tree_fields</code> before issuing the count query and <code>with_tree_fields</code>
16301
+ afterwards when applicable.</p>
16302
+
16303
+
16137
16304
  </div>
16138
16305
 
16139
16306
  </div>
@@ -16160,6 +16327,7 @@ tree fields are present on <code>of</code>.</p>
16160
16327
  This is probably a bug, we should really return -1 in the case of an empty queryset, but this is
16161
16328
  "working as implemented" and changing it would possibly be a breaking change at this point.</p>
16162
16329
 
16330
+
16163
16331
  </div>
16164
16332
 
16165
16333
  </div>
@@ -16199,6 +16367,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16199
16367
 
16200
16368
 
16201
16369
 
16370
+
16202
16371
  <div class="doc doc-children">
16203
16372
 
16204
16373
 
@@ -16243,6 +16412,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16243
16412
 
16244
16413
 
16245
16414
 
16415
+
16246
16416
  <div class="doc doc-children">
16247
16417
 
16248
16418
 
@@ -16266,6 +16436,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16266
16436
 
16267
16437
  <p>Returns the correct field type for a given database vendor.</p>
16268
16438
 
16439
+
16269
16440
  </div>
16270
16441
 
16271
16442
  </div>
@@ -16283,6 +16454,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16283
16454
 
16284
16455
  <p>Converts DB (varbinary) to Python (str).</p>
16285
16456
 
16457
+
16286
16458
  </div>
16287
16459
 
16288
16460
  </div>
@@ -16300,6 +16472,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16300
16472
 
16301
16473
  <p>Converts Python (str) to DB (varbinary).</p>
16302
16474
 
16475
+
16303
16476
  </div>
16304
16477
 
16305
16478
  </div>
@@ -16317,6 +16490,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16317
16490
 
16318
16491
  <p>Converts <code>value</code> to Python (str).</p>
16319
16492
 
16493
+
16320
16494
  </div>
16321
16495
 
16322
16496
  </div>
@@ -16334,6 +16508,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16334
16508
 
16335
16509
  <p>IPField is serialized as str(IPAddress())</p>
16336
16510
 
16511
+
16337
16512
  </div>
16338
16513
 
16339
16514
  </div>
@@ -16362,6 +16537,7 @@ This is probably a bug, we should really return -1 in the case of an empty query
16362
16537
  For example:
16363
16538
  [0, 1, 2, 10, 14, 15, 16] =&gt; "0-2, 10, 14-16"</p>
16364
16539
 
16540
+
16365
16541
  </div>
16366
16542
 
16367
16543
  </div>
@@ -16384,6 +16560,7 @@ For example:
16384
16560
  </ul>
16385
16561
  <p>Reversible by <code>deconstruct_composite_key()</code>.</p>
16386
16562
 
16563
+
16387
16564
  </div>
16388
16565
 
16389
16566
  </div>
@@ -16415,6 +16592,7 @@ slug, and then they are joined with an underscore.</p>
16415
16592
  </ul>
16416
16593
  <p>This value is not reversible, is lossy, and is not guaranteed to be unique.</p>
16417
16594
 
16595
+
16418
16596
  </div>
16419
16597
 
16420
16598
  </div>
@@ -16449,7 +16627,7 @@ slug, and then they are joined with an underscore.</p>
16449
16627
  <code>model</code>
16450
16628
  </td>
16451
16629
  <td>
16452
- <code>Model</code>
16630
+ <code><span title="Model">Model</span></code>
16453
16631
  </td>
16454
16632
  <td>
16455
16633
  <div class="doc-md-description">
@@ -16465,7 +16643,7 @@ slug, and then they are joined with an underscore.</p>
16465
16643
  <code>field</code>
16466
16644
  </td>
16467
16645
  <td>
16468
- <code>str</code>
16646
+ <code><span title="str">str</span></code>
16469
16647
  </td>
16470
16648
  <td>
16471
16649
  <div class="doc-md-description">
@@ -16481,7 +16659,7 @@ slug, and then they are joined with an underscore.</p>
16481
16659
  <code>filter_dict</code>
16482
16660
  </td>
16483
16661
  <td>
16484
- <code>dict</code>
16662
+ <code><span title="dict">dict</span></code>
16485
16663
  </td>
16486
16664
  <td>
16487
16665
  <div class="doc-md-description">
@@ -16497,7 +16675,7 @@ slug, and then they are joined with an underscore.</p>
16497
16675
  <code>manager_name</code>
16498
16676
  </td>
16499
16677
  <td>
16500
- <code>str</code>
16678
+ <code><span title="str">str</span></code>
16501
16679
  </td>
16502
16680
  <td>
16503
16681
  <div class="doc-md-description">
@@ -16511,6 +16689,7 @@ slug, and then they are joined with an underscore.</p>
16511
16689
  </tbody>
16512
16690
  </table>
16513
16691
 
16692
+
16514
16693
  </div>
16515
16694
 
16516
16695
  </div>
@@ -16533,6 +16712,7 @@ slug, and then they are joined with an underscore.</p>
16533
16712
  </ul>
16534
16713
  <p>Inverse operation of <code>construct_composite_key()</code>.</p>
16535
16714
 
16715
+
16536
16716
  </div>
16537
16717
 
16538
16718
  </div>
@@ -16550,6 +16730,7 @@ slug, and then they are joined with an underscore.</p>
16550
16730
 
16551
16731
  <p>Decorator used to register extras provided features to a model</p>
16552
16732
 
16733
+
16553
16734
  </div>
16554
16735
 
16555
16736
  </div>
@@ -16585,7 +16766,7 @@ and return them grouped by app.</p>
16585
16766
  <code>app_models</code>
16586
16767
  </td>
16587
16768
  <td>
16588
- <code>list[<a class="autorefs autorefs-internal" title="nautobot.core.models.BaseModel" href="#nautobot.apps.models.BaseModel">BaseModel</a>]</code>
16769
+ <code><span title="list">list</span>[<a class="autorefs autorefs-internal" title="nautobot.apps.models.BaseModel (nautobot.core.models.BaseModel)" href="#nautobot.apps.models.BaseModel">BaseModel</a>]</code>
16589
16770
  </td>
16590
16771
  <td>
16591
16772
  <div class="doc-md-description">
@@ -16601,7 +16782,7 @@ and return them grouped by app.</p>
16601
16782
  <code>field_names</code>
16602
16783
  </td>
16603
16784
  <td>
16604
- <code>list[str]</code>
16785
+ <code><span title="list">list</span>[<span title="str">str</span>]</code>
16605
16786
  </td>
16606
16787
  <td>
16607
16788
  <div class="doc-md-description">
@@ -16617,7 +16798,7 @@ and return them grouped by app.</p>
16617
16798
  <code>field_attributes</code>
16618
16799
  </td>
16619
16800
  <td>
16620
- <code>dict</code>
16801
+ <code><span title="dict">dict</span></code>
16621
16802
  </td>
16622
16803
  <td>
16623
16804
  <div class="doc-md-description">
@@ -16633,7 +16814,7 @@ and return them grouped by app.</p>
16633
16814
  <code>additional_constraints</code>
16634
16815
  </td>
16635
16816
  <td>
16636
- <code>dict</code>
16817
+ <code><span title="dict">dict</span></code>
16637
16818
  </td>
16638
16819
  <td>
16639
16820
  <div class="doc-md-description">
@@ -16652,6 +16833,7 @@ and return them grouped by app.</p>
16652
16833
  <summary>Return</summary>
16653
16834
  <p>(dict): A dictionary where the keys are app labels and the values are sets of model names.</p>
16654
16835
  </details>
16836
+
16655
16837
  </div>
16656
16838
 
16657
16839
  </div>
@@ -16669,6 +16851,7 @@ and return them grouped by app.</p>
16669
16851
 
16670
16852
  <p>Get a list of all non-abstract models that inherit from the given base_class.</p>
16671
16853
 
16854
+
16672
16855
  </div>
16673
16856
 
16674
16857
  </div>
@@ -16686,6 +16869,7 @@ and return them grouped by app.</p>
16686
16869
 
16687
16870
  <p>Return the Global namespace.</p>
16688
16871
 
16872
+
16689
16873
  </div>
16690
16874
 
16691
16875
  </div>
@@ -16703,6 +16887,7 @@ and return them grouped by app.</p>
16703
16887
 
16704
16888
  <p>Return the PK of the Global namespace for use in default value for foreign keys.</p>
16705
16889
 
16890
+
16706
16891
  </div>
16707
16892
 
16708
16893
  </div>
@@ -16720,6 +16905,7 @@ and return them grouped by app.</p>
16720
16905
 
16721
16906
  <p>Return True if the instance can have Tags assigned to it; False otherwise.</p>
16722
16907
 
16908
+
16723
16909
  </div>
16724
16910
 
16725
16911
  </div>
@@ -16750,6 +16936,7 @@ location00000010router00000019
16750
16936
  :param max_length: The maximum length of the returned string. Characters beyond this length will be stripped.
16751
16937
  :param integer_places: The number of places to which each integer will be expanded. (Default: 8)</p>
16752
16938
 
16939
+
16753
16940
  </div>
16754
16941
 
16755
16942
  </div>
@@ -16770,6 +16957,7 @@ InterfaceManager.</p>
16770
16957
  <p>:param value: The value to be naturalized
16771
16958
  :param max_length: The maximum length of the returned string. Characters beyond this length will be stripped.</p>
16772
16959
 
16960
+
16773
16961
  </div>
16774
16962
 
16775
16963
  </div>
@@ -16804,7 +16992,7 @@ InterfaceManager.</p>
16804
16992
  <code>query</code>
16805
16993
  </td>
16806
16994
  <td>
16807
- <code>Q</code>
16995
+ <code><span title="Q">Q</span></code>
16808
16996
  </td>
16809
16997
  <td>
16810
16998
  <div class="doc-md-description">
@@ -16830,7 +17018,7 @@ InterfaceManager.</p>
16830
17018
  <tbody>
16831
17019
  <tr class="doc-section-item">
16832
17020
  <td>
16833
- <code>str</code>
17021
+ <code><span title="str">str</span></code>
16834
17022
  </td>
16835
17023
  <td>
16836
17024
  <div class="doc-md-description">
@@ -16861,6 +17049,7 @@ InterfaceManager.</p>
16861
17049
  </blockquote>
16862
17050
  </blockquote>
16863
17051
  </details>
17052
+
16864
17053
  </div>
16865
17054
 
16866
17055
  </div>
@@ -16881,6 +17070,7 @@ change logging, not the REST API.) Optionally include a dictionary to supplement
16881
17070
  can be provided to exclude them from the returned dictionary. Private fields (prefaced with an underscore) are
16882
17071
  implicitly excluded.</p>
16883
17072
 
17073
+
16884
17074
  </div>
16885
17075
 
16886
17076
  </div>
@@ -16898,6 +17088,7 @@ implicitly excluded.</p>
16898
17088
 
16899
17089
  <p>Return a JSON serialized representation of an object using obj's serializer.</p>
16900
17090
 
17091
+
16901
17092
  </div>
16902
17093
 
16903
17094
  </div>
@@ -16920,6 +17111,7 @@ This method will prepend an "a" to content to make it graphql-safe
16920
17111
  e.g:
16921
17112
  123 main st -&gt; a123_main_st</p>
16922
17113
 
17114
+
16923
17115
  </div>
16924
17116
 
16925
17117
  </div>
@@ -16937,6 +17129,7 @@ e.g:
16937
17129
 
16938
17130
  <p>Custom slugify_function - convert '.' to '-' instead of removing dots outright.</p>
16939
17131
 
17132
+
16940
17133
  </div>
16941
17134
 
16942
17135
  </div>