nautobot 2.4.13__py3-none-any.whl → 2.4.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of nautobot might be problematic. Click here for more details.
- nautobot/apps/choices.py +8 -0
- nautobot/apps/ui.py +14 -0
- nautobot/core/api/views.py +2 -0
- nautobot/core/choices.py +4 -0
- nautobot/core/filters.py +21 -41
- nautobot/core/graphql/generators.py +8 -0
- nautobot/core/graphql/schema.py +30 -30
- nautobot/core/management/commands/check_job_approval_status.py +47 -0
- nautobot/core/management/commands/generate_test_data.py +1 -1
- nautobot/core/management/commands/migrate.py +90 -1
- nautobot/core/models/tree_queries.py +17 -0
- nautobot/core/settings.py +2 -2
- nautobot/core/settings.yaml +3 -3
- nautobot/core/tables.py +29 -6
- nautobot/core/templates/base_django.html +1 -1
- nautobot/core/templates/components/panel/header_extra_content_table.html +1 -1
- nautobot/core/templates/generic/object_list.html +17 -20
- nautobot/core/templates/inc/breadcrumbs.html +14 -0
- nautobot/core/templatetags/buttons.py +2 -4
- nautobot/core/templatetags/helpers.py +29 -6
- nautobot/core/templatetags/ui_framework.py +21 -0
- nautobot/core/testing/api.py +7 -0
- nautobot/core/testing/filters.py +20 -3
- nautobot/core/testing/forms.py +1 -1
- nautobot/core/tests/integration/test_filters.py +2 -2
- nautobot/core/tests/test_breadcrumbs.py +366 -0
- nautobot/core/tests/test_commands.py +40 -0
- nautobot/core/tests/test_filters.py +51 -1
- nautobot/core/tests/test_forms.py +1 -1
- nautobot/core/tests/test_graphql.py +4 -4
- nautobot/core/tests/test_titles.py +183 -0
- nautobot/core/tests/test_tree_queries.py +30 -0
- nautobot/core/tests/test_views.py +2 -2
- nautobot/core/tests/test_views_utils.py +1 -1
- nautobot/core/ui/breadcrumbs.py +538 -0
- nautobot/core/ui/bulk_buttons.py +53 -0
- nautobot/core/ui/object_detail.py +31 -8
- nautobot/core/ui/titles.py +127 -0
- nautobot/core/ui/utils.py +25 -0
- nautobot/core/utils/migrations.py +1 -1
- nautobot/core/views/__init__.py +1 -1
- nautobot/core/views/mixins.py +26 -1
- nautobot/core/views/renderers.py +20 -2
- nautobot/core/views/utils.py +14 -13
- nautobot/dcim/api/serializers.py +9 -0
- nautobot/dcim/choices.py +55 -0
- nautobot/dcim/constants.py +0 -16
- nautobot/dcim/factory.py +1 -1
- nautobot/dcim/filters/__init__.py +15 -3
- nautobot/dcim/forms.py +120 -7
- nautobot/dcim/management/commands/trace_paths.py +1 -1
- nautobot/dcim/migrations/0072_alter_powerfeed_options_and_more.py +97 -0
- nautobot/dcim/models/device_component_templates.py +8 -0
- nautobot/dcim/models/device_components.py +31 -12
- nautobot/dcim/models/devices.py +1 -1
- nautobot/dcim/models/power.py +171 -10
- nautobot/dcim/models/racks.py +7 -4
- nautobot/dcim/tables/devices.py +2 -0
- nautobot/dcim/tables/devicetypes.py +1 -0
- nautobot/dcim/tables/power.py +30 -2
- nautobot/dcim/templates/dcim/device.html +2 -2
- nautobot/dcim/templates/dcim/devicetype_retrieve.html +1 -214
- nautobot/dcim/templates/dcim/location_retrieve.html +2 -2
- nautobot/dcim/templates/dcim/powerfeed_edit.html +8 -0
- nautobot/dcim/templates/dcim/powerfeed_retrieve.html +1 -1
- nautobot/dcim/templates/dcim/rack.html +2 -318
- nautobot/dcim/templates/dcim/rack_edit.html +2 -47
- nautobot/dcim/templates/dcim/rack_retrieve.html +318 -0
- nautobot/dcim/templates/dcim/rack_update.html +47 -0
- nautobot/dcim/tests/integration/test_device_bulk_operations.py +61 -0
- nautobot/dcim/tests/test_api.py +24 -4
- nautobot/dcim/tests/test_filters.py +91 -13
- nautobot/dcim/tests/test_models.py +262 -0
- nautobot/dcim/tests/test_views.py +20 -12
- nautobot/dcim/urls.py +2 -27
- nautobot/dcim/utils.py +13 -30
- nautobot/dcim/views.py +428 -146
- nautobot/extras/choices.py +12 -4
- nautobot/extras/factory.py +19 -20
- nautobot/extras/filters/__init__.py +3 -2
- nautobot/extras/filters/mixins.py +23 -7
- nautobot/extras/forms/__init__.py +2 -1
- nautobot/extras/forms/forms.py +71 -0
- nautobot/extras/forms/mixins.py +4 -2
- nautobot/extras/managers.py +4 -1
- nautobot/extras/migrations/0062_collect_roles_from_related_apps_roles.py +30 -7
- nautobot/extras/migrations/0124_add_joblogentry_index.py +16 -0
- nautobot/extras/migrations/0125_jobresult_date_started.py +18 -0
- nautobot/extras/models/customfields.py +53 -5
- nautobot/extras/models/datasources.py +1 -2
- nautobot/extras/models/jobs.py +13 -3
- nautobot/extras/models/relationships.py +55 -6
- nautobot/extras/plugins/views.py +24 -1
- nautobot/extras/secrets/__init__.py +1 -1
- nautobot/extras/tables.py +9 -0
- nautobot/extras/templates/extras/customfield.html +2 -129
- nautobot/extras/templates/extras/customfield_edit.html +2 -108
- nautobot/extras/templates/extras/customfield_retrieve.html +129 -0
- nautobot/extras/templates/extras/customfield_update.html +108 -0
- nautobot/extras/templates/extras/graphqlquery.html +2 -97
- nautobot/extras/templates/extras/graphqlquery_list.html +1 -0
- nautobot/extras/templates/extras/graphqlquery_retrieve.html +97 -0
- nautobot/extras/templates/extras/inc/jobresult.html +7 -3
- nautobot/extras/templates/extras/jobresult.html +2 -155
- nautobot/extras/templates/extras/jobresult_retrieve.html +155 -0
- nautobot/extras/templates/extras/marketplace.html +5 -6
- nautobot/extras/templates/extras/note.html +2 -53
- nautobot/extras/templates/extras/note_retrieve.html +53 -0
- nautobot/extras/templates/extras/plugins_list.html +5 -6
- nautobot/extras/templates/extras/secretsgroup.html +2 -29
- nautobot/extras/templates/extras/secretsgroup_edit.html +2 -82
- nautobot/extras/templates/extras/secretsgroup_retrieve.html +29 -0
- nautobot/extras/templates/extras/secretsgroup_update.html +82 -0
- nautobot/extras/templatetags/custom_links.py +2 -2
- nautobot/extras/templatetags/job_buttons.py +1 -1
- nautobot/extras/templatetags/plugins.py +1 -1
- nautobot/extras/tests/integration/test_computedfields.py +2 -2
- nautobot/extras/tests/integration/test_customfields.py +14 -11
- nautobot/extras/tests/integration/test_dynamicgroups.py +1 -1
- nautobot/extras/tests/integration/test_notes.py +1 -1
- nautobot/extras/tests/integration/test_plugins.py +6 -6
- nautobot/extras/tests/integration/test_relationships.py +2 -2
- nautobot/extras/tests/test_customfields.py +115 -7
- nautobot/extras/tests/test_filters.py +9 -0
- nautobot/extras/tests/test_forms.py +2 -2
- nautobot/extras/tests/test_plugins.py +2 -3
- nautobot/extras/tests/test_relationships.py +14 -8
- nautobot/extras/tests/test_views.py +285 -2
- nautobot/extras/urls.py +5 -110
- nautobot/extras/utils.py +5 -2
- nautobot/extras/views.py +116 -311
- nautobot/ipam/api/views.py +69 -6
- nautobot/ipam/tables.py +8 -15
- nautobot/ipam/tests/migration/test_migrations.py +8 -8
- nautobot/ipam/tests/test_api.py +352 -2
- nautobot/ipam/tests/test_models.py +1 -1
- nautobot/project-static/docs/404.html +34 -34
- nautobot/project-static/docs/apps/index.html +34 -34
- nautobot/project-static/docs/apps/nautobot-apps.html +34 -34
- nautobot/project-static/docs/assets/_mkdocstrings.css +44 -6
- nautobot/project-static/docs/assets/javascripts/{bundle.56ea9cef.min.js → bundle.50899def.min.js} +2 -2
- nautobot/project-static/docs/assets/javascripts/{bundle.56ea9cef.min.js.map → bundle.50899def.min.js.map} +2 -2
- nautobot/project-static/docs/assets/stylesheets/{main.342714a4.min.css → main.7e37652d.min.css} +1 -1
- nautobot/project-static/docs/assets/stylesheets/{main.342714a4.min.css.map → main.7e37652d.min.css.map} +1 -1
- nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +39 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +36 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/api.html +139 -54
- nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +48 -38
- nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +50 -40
- nautobot/project-static/docs/code-reference/nautobot/apps/config.html +36 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +35 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +43 -39
- nautobot/project-static/docs/code-reference/nautobot/apps/events.html +52 -42
- nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +50 -41
- nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +54 -44
- nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +85 -93
- nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +154 -62
- nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +54 -46
- nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +146 -87
- nautobot/project-static/docs/code-reference/nautobot/apps/models.html +240 -70
- nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +38 -35
- nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +41 -35
- nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +173 -52
- nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +269 -85
- nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +5987 -2643
- nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +36 -34
- nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +165 -89
- nautobot/project-static/docs/code-reference/nautobot/apps/views.html +161 -69
- nautobot/project-static/docs/development/apps/api/configuration-view.html +34 -34
- nautobot/project-static/docs/development/apps/api/database-backend-config.html +34 -34
- nautobot/project-static/docs/development/apps/api/models/django-admin.html +34 -34
- nautobot/project-static/docs/development/apps/api/models/global-search.html +34 -34
- nautobot/project-static/docs/development/apps/api/models/graphql.html +34 -34
- nautobot/project-static/docs/development/apps/api/models/index.html +34 -34
- nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/index.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/table-extensions.html +34 -34
- nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +34 -34
- nautobot/project-static/docs/development/apps/api/prometheus.html +34 -34
- nautobot/project-static/docs/development/apps/api/setup.html +34 -34
- nautobot/project-static/docs/development/apps/api/testing.html +34 -34
- nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +34 -34
- nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +34 -34
- nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +34 -34
- nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +34 -34
- nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/base-template.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/help-documentation.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/index.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +42 -36
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/notes.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/rest-api.html +34 -34
- nautobot/project-static/docs/development/apps/api/views/urls.html +34 -34
- nautobot/project-static/docs/development/apps/index.html +34 -34
- nautobot/project-static/docs/development/apps/migration/code-updates.html +34 -34
- nautobot/project-static/docs/development/apps/migration/dependency-updates.html +34 -34
- nautobot/project-static/docs/development/apps/migration/from-v1.html +34 -34
- nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +34 -34
- nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +34 -34
- nautobot/project-static/docs/development/apps/migration/model-updates/global.html +34 -34
- nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +34 -34
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/best-practices.html +37 -37
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/breadcrumbs-titles.html +10544 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/custom-content.html +34 -34
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/index.html +34 -34
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/migration-steps.html +34 -34
- nautobot/project-static/docs/development/apps/porting-from-netbox.html +37 -37
- nautobot/project-static/docs/development/core/application-registry.html +162 -133
- nautobot/project-static/docs/development/core/best-practices.html +34 -34
- nautobot/project-static/docs/development/core/bootstrap-ui.html +34 -34
- nautobot/project-static/docs/development/core/caching.html +34 -34
- nautobot/project-static/docs/development/core/controllers.html +34 -34
- nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +34 -34
- nautobot/project-static/docs/development/core/generic-views.html +34 -34
- nautobot/project-static/docs/development/core/getting-started.html +34 -34
- nautobot/project-static/docs/development/core/homepage.html +34 -34
- nautobot/project-static/docs/development/core/index.html +34 -34
- nautobot/project-static/docs/development/core/minikube-dev-environment-for-k8s-jobs.html +34 -34
- nautobot/project-static/docs/development/core/model-checklist.html +34 -34
- nautobot/project-static/docs/development/core/model-features.html +34 -34
- nautobot/project-static/docs/development/core/natural-keys.html +34 -34
- nautobot/project-static/docs/development/core/navigation-menu.html +34 -34
- nautobot/project-static/docs/development/core/release-checklist.html +34 -34
- nautobot/project-static/docs/development/core/role-internals.html +34 -34
- nautobot/project-static/docs/development/core/settings.html +34 -34
- nautobot/project-static/docs/development/core/style-guide.html +34 -34
- nautobot/project-static/docs/development/core/templates.html +34 -34
- nautobot/project-static/docs/development/core/testing.html +34 -34
- nautobot/project-static/docs/development/core/ui-component-framework.html +724 -289
- nautobot/project-static/docs/development/core/user-preferences.html +34 -34
- nautobot/project-static/docs/development/index.html +34 -34
- nautobot/project-static/docs/development/jobs/getting-started.html +34 -34
- nautobot/project-static/docs/development/jobs/index.html +34 -34
- nautobot/project-static/docs/development/jobs/installation.html +34 -34
- nautobot/project-static/docs/development/jobs/job-extensions.html +34 -34
- nautobot/project-static/docs/development/jobs/job-logging.html +34 -34
- nautobot/project-static/docs/development/jobs/job-patterns.html +34 -34
- nautobot/project-static/docs/development/jobs/job-structure.html +34 -34
- nautobot/project-static/docs/development/jobs/migration/from-v1.html +34 -34
- nautobot/project-static/docs/development/jobs/testing.html +34 -34
- nautobot/project-static/docs/index.html +34 -34
- nautobot/project-static/docs/media/development/core/ui-component-framework/breadcrumbs-titles-data-flow.png +0 -0
- nautobot/project-static/docs/media/power_distribution.png +0 -0
- nautobot/project-static/docs/objects.inv +0 -0
- nautobot/project-static/docs/overview/application_stack.html +34 -34
- nautobot/project-static/docs/overview/design_philosophy.html +34 -34
- nautobot/project-static/docs/release-notes/index.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.0.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.1.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.2.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.3.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.4.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.5.html +34 -34
- nautobot/project-static/docs/release-notes/version-1.6.html +34 -34
- nautobot/project-static/docs/release-notes/version-2.0.html +34 -34
- nautobot/project-static/docs/release-notes/version-2.1.html +34 -34
- nautobot/project-static/docs/release-notes/version-2.2.html +34 -34
- nautobot/project-static/docs/release-notes/version-2.3.html +34 -34
- nautobot/project-static/docs/release-notes/version-2.4.html +402 -34
- nautobot/project-static/docs/requirements.txt +3 -3
- nautobot/project-static/docs/search/search_index.json +1 -1
- nautobot/project-static/docs/sitemap.xml +303 -299
- nautobot/project-static/docs/sitemap.xml.gz +0 -0
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +34 -34
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +34 -34
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +34 -34
- nautobot/project-static/docs/user-guide/administration/configuration/index.html +34 -34
- nautobot/project-static/docs/user-guide/administration/configuration/redis.html +34 -34
- nautobot/project-static/docs/user-guide/administration/configuration/settings.html +37 -37
- nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/docker.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/health-checks.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/permissions.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +34 -34
- nautobot/project-static/docs/user-guide/administration/guides/selinux-troubleshooting.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/app-install.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/http-server.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/index.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/install_system.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +34 -34
- nautobot/project-static/docs/user-guide/administration/installation/services.html +34 -34
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +34 -34
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +34 -34
- nautobot/project-static/docs/user-guide/administration/security/index.html +34 -34
- nautobot/project-static/docs/user-guide/administration/security/notices.html +34 -34
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +296 -251
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +34 -34
- nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +37 -37
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +42 -52
- nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +37 -37
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulefamily.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +316 -39
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +35 -35
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +147 -37
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +52 -35
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +51 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualdevicecontext.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/wireless/index.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/wireless/radioprofile.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/wireless/supporteddatarate.html +34 -34
- nautobot/project-static/docs/user-guide/core-data-model/wireless/wirelessnetwork.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/graphql.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/relationships.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +34 -34
- nautobot/project-static/docs/user-guide/feature-guides/wireless-networks-and-controllers.html +34 -34
- nautobot/project-static/docs/user-guide/index.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/events.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +35 -35
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobqueue.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/kubernetes-job-support.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/managing-jobs.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/note.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/objectmetadata.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/rendering-jinja-templates.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/role.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/secret.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/status.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/tag.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +34 -34
- nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +34 -34
- nautobot/tenancy/api/views.py +2 -1
- nautobot/users/tests/test_api.py +2 -2
- nautobot/virtualization/templates/virtualization/virtualmachine.html +2 -252
- nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +2 -75
- nautobot/virtualization/templates/virtualization/virtualmachine_retrieve.html +252 -0
- nautobot/virtualization/templates/virtualization/virtualmachine_update.html +75 -0
- nautobot/virtualization/urls.py +3 -61
- nautobot/virtualization/views.py +48 -72
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/METADATA +27 -27
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/RECORD +463 -439
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/LICENSE.txt +0 -0
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/NOTICE +0 -0
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/WHEEL +0 -0
- {nautobot-2.4.13.dist-info → nautobot-2.4.15.dist-info}/entry_points.txt +0 -0
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
<link rel="icon" href="../../assets/favicon.ico">
|
|
21
|
-
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.
|
|
21
|
+
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.16">
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
29
|
-
<link rel="stylesheet" href="../../assets/stylesheets/main.
|
|
29
|
+
<link rel="stylesheet" href="../../assets/stylesheets/main.7e37652d.min.css">
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
<style>:root{--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20448%20512%22%3E%3C%21--%21%20Font%20Awesome%20Free%
|
|
41
|
+
<style>:root{--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20448%20512%22%3E%3C%21--%21%20Font%20Awesome%20Free%207.0.0%20by%20%40fontawesome%20-%20https%3A//fontawesome.com%20License%20-%20https%3A//fontawesome.com/license/free%20%28Icons%3A%20CC%20BY%204.0%2C%20Fonts%3A%20SIL%20OFL%201.1%2C%20Code%3A%20MIT%20License%29%20Copyright%202025%20Fonticons%2C%20Inc.--%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M288%200H128c-17.7%200-32%2014.3-32%2032s14.3%2032%2032%2032v151.5L7.5%20426.3C2.6%20435%200%20444.7%200%20454.7%200%20486.4%2025.6%20512%2057.3%20512h333.4c31.6%200%2057.3-25.6%2057.3-57.3%200-10-2.6-19.8-7.5-28.4L320%20215.5V64c17.7%200%2032-14.3%2032-32S337.7%200%20320%200zm-96%20215.5V64h64v151.5c0%2011.1%202.9%2022.1%208.4%2031.8L306%20320H142l41.6-72.7c5.5-9.7%208.4-20.6%208.4-31.8%22/%3E%3C/svg%3E');}</style>
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|
|
@@ -220,7 +220,7 @@
|
|
|
220
220
|
<a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
|
|
221
221
|
<div class="md-source__icon md-icon">
|
|
222
222
|
|
|
223
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free
|
|
223
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
|
|
224
224
|
</div>
|
|
225
225
|
<div class="md-source__repository">
|
|
226
226
|
GitHub
|
|
@@ -392,7 +392,7 @@
|
|
|
392
392
|
<a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
|
|
393
393
|
<div class="md-source__icon md-icon">
|
|
394
394
|
|
|
395
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free
|
|
395
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
|
|
396
396
|
</div>
|
|
397
397
|
<div class="md-source__repository">
|
|
398
398
|
GitHub
|
|
@@ -4004,29 +4004,6 @@
|
|
|
4004
4004
|
|
|
4005
4005
|
|
|
4006
4006
|
|
|
4007
|
-
<li class="md-nav__item">
|
|
4008
|
-
<a href="../../user-guide/core-data-model/dcim/inventoryitem.html" class="md-nav__link">
|
|
4009
|
-
|
|
4010
|
-
|
|
4011
|
-
|
|
4012
|
-
<span class="md-ellipsis">
|
|
4013
|
-
Inventory Item
|
|
4014
|
-
|
|
4015
|
-
</span>
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
</a>
|
|
4019
|
-
</li>
|
|
4020
|
-
|
|
4021
|
-
|
|
4022
|
-
|
|
4023
|
-
|
|
4024
|
-
|
|
4025
|
-
|
|
4026
|
-
|
|
4027
|
-
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
4007
|
<li class="md-nav__item">
|
|
4031
4008
|
<a href="../../user-guide/core-data-model/dcim/modulebay.html" class="md-nav__link">
|
|
4032
4009
|
|
|
@@ -8696,6 +8673,29 @@
|
|
|
8696
8673
|
|
|
8697
8674
|
|
|
8698
8675
|
|
|
8676
|
+
|
|
8677
|
+
|
|
8678
|
+
|
|
8679
|
+
|
|
8680
|
+
|
|
8681
|
+
|
|
8682
|
+
<li class="md-nav__item">
|
|
8683
|
+
<a href="../apps/migration/ui-component-framework/breadcrumbs-titles.html" class="md-nav__link">
|
|
8684
|
+
|
|
8685
|
+
|
|
8686
|
+
|
|
8687
|
+
<span class="md-ellipsis">
|
|
8688
|
+
Breadcrumbs and titles
|
|
8689
|
+
|
|
8690
|
+
</span>
|
|
8691
|
+
|
|
8692
|
+
|
|
8693
|
+
</a>
|
|
8694
|
+
</li>
|
|
8695
|
+
|
|
8696
|
+
|
|
8697
|
+
|
|
8698
|
+
|
|
8699
8699
|
</ul>
|
|
8700
8700
|
</nav>
|
|
8701
8701
|
|
|
@@ -8993,6 +8993,15 @@
|
|
|
8993
8993
|
</span>
|
|
8994
8994
|
</a>
|
|
8995
8995
|
|
|
8996
|
+
</li>
|
|
8997
|
+
|
|
8998
|
+
<li class="md-nav__item">
|
|
8999
|
+
<a href="#feature_models" class="md-nav__link">
|
|
9000
|
+
<span class="md-ellipsis">
|
|
9001
|
+
feature_models
|
|
9002
|
+
</span>
|
|
9003
|
+
</a>
|
|
9004
|
+
|
|
8996
9005
|
</li>
|
|
8997
9006
|
|
|
8998
9007
|
<li class="md-nav__item">
|
|
@@ -10231,6 +10240,15 @@
|
|
|
10231
10240
|
</span>
|
|
10232
10241
|
</a>
|
|
10233
10242
|
|
|
10243
|
+
</li>
|
|
10244
|
+
|
|
10245
|
+
<li class="md-nav__item">
|
|
10246
|
+
<a href="#feature_models" class="md-nav__link">
|
|
10247
|
+
<span class="md-ellipsis">
|
|
10248
|
+
feature_models
|
|
10249
|
+
</span>
|
|
10250
|
+
</a>
|
|
10251
|
+
|
|
10234
10252
|
</li>
|
|
10235
10253
|
|
|
10236
10254
|
<li class="md-nav__item">
|
|
@@ -10382,119 +10400,130 @@
|
|
|
10382
10400
|
<a id="__codelineno-2-29" name="__codelineno-2-29" href="#__codelineno-2-29"></a> <span class="p">}</span>
|
|
10383
10401
|
<a id="__codelineno-2-30" name="__codelineno-2-30" href="#__codelineno-2-30"></a><span class="p">}</span>
|
|
10384
10402
|
</code></pre></div>
|
|
10403
|
+
<h3 id="feature_models"><code>feature_models</code><a class="headerlink" href="#feature_models" title="Permanent link">¶</a></h3>
|
|
10404
|
+
<details class="version-added">
|
|
10405
|
+
<summary>Added in version 2.4.14</summary>
|
|
10406
|
+
</details>
|
|
10407
|
+
<p>A dictionary of particular features (e.g. "graphql") mapped to the set of Nautobot model classes which support each such feature. For example:</p>
|
|
10408
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a><span class="o">>>></span> <span class="kn">from</span> <span class="nn">nautobot.extras.registry</span> <span class="kn">import</span> <span class="n">registry</span>
|
|
10409
|
+
<a id="__codelineno-3-2" name="__codelineno-3-2" href="#__codelineno-3-2"></a><span class="o">>>></span> <span class="n">registry</span><span class="p">[</span><span class="s2">"feature_models"</span><span class="p">][</span><span class="s2">"graphql"</span><span class="p">]</span>
|
|
10410
|
+
<a id="__codelineno-3-3" name="__codelineno-3-3" href="#__codelineno-3-3"></a><span class="p">[</span><span class="o"><</span><span class="k">class</span> <span class="err">'</span><span class="nc">nautobot</span><span class="o">.</span><span class="n">extras</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">change_logging</span><span class="o">.</span><span class="n">ObjectChange</span><span class="s1">'>, <class '</span><span class="n">nautobot</span><span class="o">.</span><span class="n">extras</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">customfields</span><span class="o">.</span><span class="n">ComputedField</span><span class="s1">'>, <class '</span><span class="n">nautobot</span><span class="o">.</span><span class="n">extras</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">customfields</span><span class="o">.</span><span class="n">CustomFieldChoice</span><span class="s1">'>, <class '</span><span class="n">nautobot</span><span class="o">.</span><span class="n">extras</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">roles</span><span class="o">.</span><span class="n">Role</span><span class="s1">'>, ...</span>
|
|
10411
|
+
</code></pre></div>
|
|
10412
|
+
<p>Useful as an alternative to <code>model_features</code> (<a href="#model_features">below</a>) for cases where direct access to the Django model classes is desired, such as in generating the GraphQL schema.</p>
|
|
10385
10413
|
<h3 id="jobs"><code>jobs</code><a class="headerlink" href="#jobs" title="Permanent link">¶</a></h3>
|
|
10386
10414
|
<details class="version-added">
|
|
10387
10415
|
<summary>Added in version 2.2.3</summary>
|
|
10388
10416
|
</details>
|
|
10389
10417
|
<p>A dictionary of registered <a href="../jobs/index.html">Job classes</a>, indexed by their <a href="../../user-guide/platform-functionality/jobs/models.html#understanding-job-class-paths">class path</a>. For example:</p>
|
|
10390
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10391
|
-
<a id="__codelineno-
|
|
10392
|
-
<a id="__codelineno-
|
|
10393
|
-
<a id="__codelineno-
|
|
10394
|
-
<a id="__codelineno-
|
|
10395
|
-
<a id="__codelineno-
|
|
10396
|
-
<a id="__codelineno-
|
|
10397
|
-
<a id="__codelineno-
|
|
10398
|
-
<a id="__codelineno-
|
|
10399
|
-
<a id="__codelineno-
|
|
10400
|
-
<a id="__codelineno-
|
|
10401
|
-
<a id="__codelineno-
|
|
10402
|
-
<a id="__codelineno-
|
|
10403
|
-
<a id="__codelineno-
|
|
10418
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a><span class="p">{</span>
|
|
10419
|
+
<a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a> <span class="s2">"nautobot.core.jobs.ExportObjectList"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">nautobot</span><span class="o">.</span><span class="n">core</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExportObjectList</span><span class="s2">">,</span>
|
|
10420
|
+
<a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a> <span class="s2">"nautobot.core.jobs.GitRepositorySync"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">nautobot</span><span class="o">.</span><span class="n">core</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">GitRepositorySync</span><span class="s2">">,</span>
|
|
10421
|
+
<a id="__codelineno-4-4" name="__codelineno-4-4" href="#__codelineno-4-4"></a> <span class="s2">"nautobot.core.jobs.GitRepositoryDryRun"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">nautobot</span><span class="o">.</span><span class="n">core</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">GitRepositoryDryRun</span><span class="s2">">,</span>
|
|
10422
|
+
<a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a> <span class="s2">"nautobot.core.jobs.ImportObjects"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">nautobot</span><span class="o">.</span><span class="n">core</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ImportObjects</span><span class="s2">">,</span>
|
|
10423
|
+
<a id="__codelineno-4-6" name="__codelineno-4-6" href="#__codelineno-4-6"></a> <span class="s2">"example_app.jobs.ExampleDryRunJob"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleDryRunJob</span><span class="s2">">,</span>
|
|
10424
|
+
<a id="__codelineno-4-7" name="__codelineno-4-7" href="#__codelineno-4-7"></a> <span class="s2">"example_app.jobs.ExampleJob"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleJob</span><span class="s2">">,</span>
|
|
10425
|
+
<a id="__codelineno-4-8" name="__codelineno-4-8" href="#__codelineno-4-8"></a> <span class="s2">"example_app.jobs.ExampleHiddenJob"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleHiddenJob</span><span class="s2">">,</span>
|
|
10426
|
+
<a id="__codelineno-4-9" name="__codelineno-4-9" href="#__codelineno-4-9"></a> <span class="s2">"example_app.jobs.ExampleLoggingJob"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleLoggingJob</span><span class="s2">">,</span>
|
|
10427
|
+
<a id="__codelineno-4-10" name="__codelineno-4-10" href="#__codelineno-4-10"></a> <span class="s2">"example_app.jobs.ExampleFileInputOutputJob"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleFileInputOutputJob</span><span class="s2">">,</span>
|
|
10428
|
+
<a id="__codelineno-4-11" name="__codelineno-4-11" href="#__codelineno-4-11"></a> <span class="s2">"example_app.jobs.ExampleJobHookReceiver"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleJobHookReceiver</span><span class="s2">">,</span>
|
|
10429
|
+
<a id="__codelineno-4-12" name="__codelineno-4-12" href="#__codelineno-4-12"></a> <span class="s2">"example_app.jobs.ExampleSimpleJobButtonReceiver"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleSimpleJobButtonReceiver</span><span class="s2">">,</span>
|
|
10430
|
+
<a id="__codelineno-4-13" name="__codelineno-4-13" href="#__codelineno-4-13"></a> <span class="s2">"example_app.jobs.ExampleComplexJobButtonReceiver"</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">"</span><span class="nc">example_app</span><span class="o">.</span><span class="n">jobs</span><span class="o">.</span><span class="n">ExampleComplexJobButtonReceiver</span><span class="s2">"></span>
|
|
10431
|
+
<a id="__codelineno-4-14" name="__codelineno-4-14" href="#__codelineno-4-14"></a><span class="p">}</span>
|
|
10404
10432
|
</code></pre></div>
|
|
10405
10433
|
<div class="admonition caution">
|
|
10406
10434
|
<p class="admonition-title">Caution</p>
|
|
10407
10435
|
<p>This registry entry should be treated as a cache and as an implementation detail; in general you should prefer the use of the <code>nautobot.apps.get_jobs()</code> and/or <code>nautobot.apps.get_job()</code> APIs in order to retrieve specific Job classes.</p>
|
|
10408
10436
|
</div>
|
|
10409
10437
|
<h3 id="model_features"><code>model_features</code><a class="headerlink" href="#model_features" title="Permanent link">¶</a></h3>
|
|
10410
|
-
<p>A dictionary of particular features (e.g. custom fields) mapped to the Nautobot models which support them, arranged by app. For example:</p>
|
|
10411
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10412
|
-
<a id="__codelineno-
|
|
10413
|
-
<a id="__codelineno-
|
|
10414
|
-
<a id="__codelineno-
|
|
10415
|
-
<a id="__codelineno-
|
|
10416
|
-
<a id="__codelineno-
|
|
10417
|
-
<a id="__codelineno-
|
|
10418
|
-
<a id="__codelineno-
|
|
10419
|
-
<a id="__codelineno-
|
|
10420
|
-
<a id="__codelineno-
|
|
10421
|
-
<a id="__codelineno-
|
|
10438
|
+
<p>A dictionary of particular features (e.g. custom fields) mapped to the names of Nautobot models which support them, arranged by app. For example:</p>
|
|
10439
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a><span class="p">{</span>
|
|
10440
|
+
<a id="__codelineno-5-2" name="__codelineno-5-2" href="#__codelineno-5-2"></a> <span class="s1">'custom_fields'</span><span class="p">:</span> <span class="p">{</span>
|
|
10441
|
+
<a id="__codelineno-5-3" name="__codelineno-5-3" href="#__codelineno-5-3"></a> <span class="s1">'circuits'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'provider'</span><span class="p">,</span> <span class="s1">'circuit'</span><span class="p">],</span>
|
|
10442
|
+
<a id="__codelineno-5-4" name="__codelineno-5-4" href="#__codelineno-5-4"></a> <span class="s1">'dcim'</span><span class="p">:</span> <span class="p">[</span><span class="s1">'location'</span><span class="p">,</span> <span class="s1">'rack'</span><span class="p">,</span> <span class="s1">'devicetype'</span><span class="p">,</span> <span class="o">...</span><span class="p">],</span>
|
|
10443
|
+
<a id="__codelineno-5-5" name="__codelineno-5-5" href="#__codelineno-5-5"></a> <span class="o">...</span>
|
|
10444
|
+
<a id="__codelineno-5-6" name="__codelineno-5-6" href="#__codelineno-5-6"></a> <span class="p">},</span>
|
|
10445
|
+
<a id="__codelineno-5-7" name="__codelineno-5-7" href="#__codelineno-5-7"></a> <span class="s1">'webhooks'</span><span class="p">:</span> <span class="p">{</span>
|
|
10446
|
+
<a id="__codelineno-5-8" name="__codelineno-5-8" href="#__codelineno-5-8"></a> <span class="o">...</span>
|
|
10447
|
+
<a id="__codelineno-5-9" name="__codelineno-5-9" href="#__codelineno-5-9"></a> <span class="p">},</span>
|
|
10448
|
+
<a id="__codelineno-5-10" name="__codelineno-5-10" href="#__codelineno-5-10"></a> <span class="o">...</span>
|
|
10449
|
+
<a id="__codelineno-5-11" name="__codelineno-5-11" href="#__codelineno-5-11"></a><span class="p">}</span>
|
|
10422
10450
|
</code></pre></div>
|
|
10423
10451
|
<p>For more information visit <a href="model-features.html">model-features</a>.</p>
|
|
10452
|
+
<p>In cases where grouping by app is not important, and direct access to the Django model classes is desired, the <code>feature_models</code> registry entry (<a href="#feature_models">above</a>) may be used as an alternative in recent versions of Nautobot.</p>
|
|
10424
10453
|
<h3 id="nav_menu"><code>nav_menu</code><a class="headerlink" href="#nav_menu" title="Permanent link">¶</a></h3>
|
|
10425
10454
|
<p>Navigation menu items provided by Nautobot applications. Each app may register its navbar configuration inside of the <code>nav_menu</code> dictionary using <code>navigation.py</code>. Tabs are stored in the top level moving down to groups, items and buttons. Tabs, groups and items can be modified by using the key values inside other core applications and Apps. The <code>nav_menu</code> dict should never be modified directly.</p>
|
|
10426
10455
|
<p>Example:</p>
|
|
10427
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10428
|
-
<a id="__codelineno-
|
|
10429
|
-
<a id="__codelineno-
|
|
10430
|
-
<a id="__codelineno-
|
|
10431
|
-
<a id="__codelineno-
|
|
10432
|
-
<a id="__codelineno-
|
|
10433
|
-
<a id="__codelineno-
|
|
10434
|
-
<a id="__codelineno-
|
|
10435
|
-
<a id="__codelineno-
|
|
10436
|
-
<a id="__codelineno-
|
|
10437
|
-
<a id="__codelineno-
|
|
10438
|
-
<a id="__codelineno-
|
|
10439
|
-
<a id="__codelineno-
|
|
10440
|
-
<a id="__codelineno-
|
|
10441
|
-
<a id="__codelineno-
|
|
10442
|
-
<a id="__codelineno-
|
|
10443
|
-
<a id="__codelineno-
|
|
10444
|
-
<a id="__codelineno-
|
|
10445
|
-
<a id="__codelineno-
|
|
10446
|
-
<a id="__codelineno-
|
|
10447
|
-
<a id="__codelineno-
|
|
10448
|
-
<a id="__codelineno-
|
|
10449
|
-
<a id="__codelineno-
|
|
10450
|
-
<a id="__codelineno-
|
|
10451
|
-
<a id="__codelineno-
|
|
10452
|
-
<a id="__codelineno-
|
|
10453
|
-
<a id="__codelineno-
|
|
10454
|
-
<a id="__codelineno-
|
|
10455
|
-
<a id="__codelineno-
|
|
10456
|
-
<a id="__codelineno-
|
|
10457
|
-
<a id="__codelineno-
|
|
10458
|
-
<a id="__codelineno-
|
|
10459
|
-
<a id="__codelineno-
|
|
10460
|
-
<a id="__codelineno-
|
|
10461
|
-
<a id="__codelineno-
|
|
10462
|
-
<a id="__codelineno-
|
|
10463
|
-
<a id="__codelineno-
|
|
10464
|
-
<a id="__codelineno-
|
|
10465
|
-
<a id="__codelineno-
|
|
10466
|
-
<a id="__codelineno-
|
|
10467
|
-
<a id="__codelineno-
|
|
10468
|
-
<a id="__codelineno-
|
|
10469
|
-
<a id="__codelineno-
|
|
10470
|
-
<a id="__codelineno-
|
|
10471
|
-
<a id="__codelineno-
|
|
10472
|
-
<a id="__codelineno-
|
|
10473
|
-
<a id="__codelineno-
|
|
10474
|
-
<a id="__codelineno-
|
|
10475
|
-
<a id="__codelineno-
|
|
10476
|
-
<a id="__codelineno-
|
|
10477
|
-
<a id="__codelineno-
|
|
10478
|
-
<a id="__codelineno-
|
|
10479
|
-
<a id="__codelineno-
|
|
10480
|
-
<a id="__codelineno-
|
|
10481
|
-
<a id="__codelineno-
|
|
10482
|
-
<a id="__codelineno-
|
|
10483
|
-
<a id="__codelineno-
|
|
10484
|
-
<a id="__codelineno-
|
|
10456
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a><span class="p">{</span>
|
|
10457
|
+
<a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a> <span class="s2">"tabs"</span><span class="p">:</span> <span class="p">{</span>
|
|
10458
|
+
<a id="__codelineno-6-3" name="__codelineno-6-3" href="#__codelineno-6-3"></a> <span class="s2">"tab_1"</span><span class="p">:</span> <span class="p">{</span>
|
|
10459
|
+
<a id="__codelineno-6-4" name="__codelineno-6-4" href="#__codelineno-6-4"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
|
|
10460
|
+
<a id="__codelineno-6-5" name="__codelineno-6-5" href="#__codelineno-6-5"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10461
|
+
<a id="__codelineno-6-6" name="__codelineno-6-6" href="#__codelineno-6-6"></a> <span class="s2">"groups"</span><span class="p">:</span> <span class="p">{</span>
|
|
10462
|
+
<a id="__codelineno-6-7" name="__codelineno-6-7" href="#__codelineno-6-7"></a> <span class="s2">"group_1"</span><span class="p">:{</span>
|
|
10463
|
+
<a id="__codelineno-6-8" name="__codelineno-6-8" href="#__codelineno-6-8"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
|
|
10464
|
+
<a id="__codelineno-6-9" name="__codelineno-6-9" href="#__codelineno-6-9"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10465
|
+
<a id="__codelineno-6-10" name="__codelineno-6-10" href="#__codelineno-6-10"></a> <span class="s2">"items"</span><span class="p">:</span> <span class="p">{</span>
|
|
10466
|
+
<a id="__codelineno-6-11" name="__codelineno-6-11" href="#__codelineno-6-11"></a> <span class="s2">"item_link_1"</span><span class="p">:</span> <span class="p">{</span>
|
|
10467
|
+
<a id="__codelineno-6-12" name="__codelineno-6-12" href="#__codelineno-6-12"></a> <span class="s2">"link_text"</span><span class="p">:</span> <span class="s2">"Item 1"</span><span class="p">,</span>
|
|
10468
|
+
<a id="__codelineno-6-13" name="__codelineno-6-13" href="#__codelineno-6-13"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
|
|
10469
|
+
<a id="__codelineno-6-14" name="__codelineno-6-14" href="#__codelineno-6-14"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10470
|
+
<a id="__codelineno-6-15" name="__codelineno-6-15" href="#__codelineno-6-15"></a> <span class="s2">"buttons"</span><span class="p">:</span> <span class="p">{</span>
|
|
10471
|
+
<a id="__codelineno-6-16" name="__codelineno-6-16" href="#__codelineno-6-16"></a> <span class="s2">"button_1"</span><span class="p">:</span> <span class="p">{</span>
|
|
10472
|
+
<a id="__codelineno-6-17" name="__codelineno-6-17" href="#__codelineno-6-17"></a> <span class="s2">"button_class"</span><span class="p">:</span> <span class="s2">"success"</span><span class="p">,</span>
|
|
10473
|
+
<a id="__codelineno-6-18" name="__codelineno-6-18" href="#__codelineno-6-18"></a> <span class="s2">"icon_class"</span><span class="p">:</span> <span class="s2">"mdi-plus-thick"</span><span class="p">,</span>
|
|
10474
|
+
<a id="__codelineno-6-19" name="__codelineno-6-19" href="#__codelineno-6-19"></a> <span class="s2">"link"</span><span class="p">:</span> <span class="s2">"button_link_1"</span><span class="p">,</span>
|
|
10475
|
+
<a id="__codelineno-6-20" name="__codelineno-6-20" href="#__codelineno-6-20"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
|
|
10476
|
+
<a id="__codelineno-6-21" name="__codelineno-6-21" href="#__codelineno-6-21"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10477
|
+
<a id="__codelineno-6-22" name="__codelineno-6-22" href="#__codelineno-6-22"></a> <span class="p">},</span>
|
|
10478
|
+
<a id="__codelineno-6-23" name="__codelineno-6-23" href="#__codelineno-6-23"></a> <span class="s2">"button_2"</span><span class="p">:</span> <span class="p">{</span>
|
|
10479
|
+
<a id="__codelineno-6-24" name="__codelineno-6-24" href="#__codelineno-6-24"></a> <span class="s2">"button_class"</span><span class="p">:</span> <span class="s2">"success"</span><span class="p">,</span>
|
|
10480
|
+
<a id="__codelineno-6-25" name="__codelineno-6-25" href="#__codelineno-6-25"></a> <span class="s2">"icon_class"</span><span class="p">:</span> <span class="s2">"mdi-plus-thick"</span><span class="p">,</span>
|
|
10481
|
+
<a id="__codelineno-6-26" name="__codelineno-6-26" href="#__codelineno-6-26"></a> <span class="s2">"link"</span><span class="p">:</span> <span class="s2">"button_link_2"</span><span class="p">,</span>
|
|
10482
|
+
<a id="__codelineno-6-27" name="__codelineno-6-27" href="#__codelineno-6-27"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">200</span><span class="p">,</span>
|
|
10483
|
+
<a id="__codelineno-6-28" name="__codelineno-6-28" href="#__codelineno-6-28"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10484
|
+
<a id="__codelineno-6-29" name="__codelineno-6-29" href="#__codelineno-6-29"></a> <span class="p">}</span>
|
|
10485
|
+
<a id="__codelineno-6-30" name="__codelineno-6-30" href="#__codelineno-6-30"></a> <span class="p">}</span>
|
|
10486
|
+
<a id="__codelineno-6-31" name="__codelineno-6-31" href="#__codelineno-6-31"></a> <span class="p">},</span>
|
|
10487
|
+
<a id="__codelineno-6-32" name="__codelineno-6-32" href="#__codelineno-6-32"></a> <span class="s2">"item_link_2"</span><span class="p">:</span> <span class="p">{</span>
|
|
10488
|
+
<a id="__codelineno-6-33" name="__codelineno-6-33" href="#__codelineno-6-33"></a> <span class="s2">"link_text"</span><span class="p">:</span> <span class="s2">"Item 2"</span><span class="p">,</span>
|
|
10489
|
+
<a id="__codelineno-6-34" name="__codelineno-6-34" href="#__codelineno-6-34"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">200</span><span class="p">,</span>
|
|
10490
|
+
<a id="__codelineno-6-35" name="__codelineno-6-35" href="#__codelineno-6-35"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10491
|
+
<a id="__codelineno-6-36" name="__codelineno-6-36" href="#__codelineno-6-36"></a> <span class="s2">"buttons"</span><span class="p">:</span> <span class="p">{</span>
|
|
10492
|
+
<a id="__codelineno-6-37" name="__codelineno-6-37" href="#__codelineno-6-37"></a> <span class="s2">"button_1"</span><span class="p">:</span> <span class="p">{</span>
|
|
10493
|
+
<a id="__codelineno-6-38" name="__codelineno-6-38" href="#__codelineno-6-38"></a> <span class="s2">"button_class"</span><span class="p">:</span> <span class="s2">"success"</span><span class="p">,</span>
|
|
10494
|
+
<a id="__codelineno-6-39" name="__codelineno-6-39" href="#__codelineno-6-39"></a> <span class="s2">"icon_class"</span><span class="p">:</span> <span class="s2">"mdi-plus-thick"</span><span class="p">,</span>
|
|
10495
|
+
<a id="__codelineno-6-40" name="__codelineno-6-40" href="#__codelineno-6-40"></a> <span class="s2">"link"</span><span class="p">:</span> <span class="s2">"button_link_1"</span><span class="p">,</span>
|
|
10496
|
+
<a id="__codelineno-6-41" name="__codelineno-6-41" href="#__codelineno-6-41"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">100</span><span class="p">,</span>
|
|
10497
|
+
<a id="__codelineno-6-42" name="__codelineno-6-42" href="#__codelineno-6-42"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10498
|
+
<a id="__codelineno-6-43" name="__codelineno-6-43" href="#__codelineno-6-43"></a> <span class="p">},</span>
|
|
10499
|
+
<a id="__codelineno-6-44" name="__codelineno-6-44" href="#__codelineno-6-44"></a> <span class="s2">"button_2"</span><span class="p">:</span> <span class="p">{</span>
|
|
10500
|
+
<a id="__codelineno-6-45" name="__codelineno-6-45" href="#__codelineno-6-45"></a> <span class="s2">"button_class"</span><span class="p">:</span> <span class="s2">"success"</span><span class="p">,</span>
|
|
10501
|
+
<a id="__codelineno-6-46" name="__codelineno-6-46" href="#__codelineno-6-46"></a> <span class="s2">"icon_class"</span><span class="p">:</span> <span class="s2">"mdi-plus-thick"</span><span class="p">,</span>
|
|
10502
|
+
<a id="__codelineno-6-47" name="__codelineno-6-47" href="#__codelineno-6-47"></a> <span class="s2">"link"</span><span class="p">:</span> <span class="s2">"button_link_2"</span><span class="p">,</span>
|
|
10503
|
+
<a id="__codelineno-6-48" name="__codelineno-6-48" href="#__codelineno-6-48"></a> <span class="s2">"weight"</span><span class="p">:</span> <span class="mi">200</span><span class="p">,</span>
|
|
10504
|
+
<a id="__codelineno-6-49" name="__codelineno-6-49" href="#__codelineno-6-49"></a> <span class="s2">"permissions"</span><span class="p">:</span> <span class="p">[],</span>
|
|
10505
|
+
<a id="__codelineno-6-50" name="__codelineno-6-50" href="#__codelineno-6-50"></a> <span class="p">}</span>
|
|
10506
|
+
<a id="__codelineno-6-51" name="__codelineno-6-51" href="#__codelineno-6-51"></a> <span class="p">}</span>
|
|
10507
|
+
<a id="__codelineno-6-52" name="__codelineno-6-52" href="#__codelineno-6-52"></a> <span class="p">},</span>
|
|
10508
|
+
<a id="__codelineno-6-53" name="__codelineno-6-53" href="#__codelineno-6-53"></a> <span class="p">}</span>
|
|
10509
|
+
<a id="__codelineno-6-54" name="__codelineno-6-54" href="#__codelineno-6-54"></a> <span class="p">}</span>
|
|
10510
|
+
<a id="__codelineno-6-55" name="__codelineno-6-55" href="#__codelineno-6-55"></a> <span class="p">}</span>
|
|
10511
|
+
<a id="__codelineno-6-56" name="__codelineno-6-56" href="#__codelineno-6-56"></a> <span class="p">}</span>
|
|
10512
|
+
<a id="__codelineno-6-57" name="__codelineno-6-57" href="#__codelineno-6-57"></a> <span class="p">}</span>
|
|
10513
|
+
<a id="__codelineno-6-58" name="__codelineno-6-58" href="#__codelineno-6-58"></a><span class="p">}</span>
|
|
10485
10514
|
</code></pre></div>
|
|
10486
10515
|
<h3 id="plugin_custom_validators"><code>plugin_custom_validators</code><a class="headerlink" href="#plugin_custom_validators" title="Permanent link">¶</a></h3>
|
|
10487
10516
|
<p>App <a href="../apps/api/platform-features/custom-validators.html">custom validator classes</a> that provide additional data model validation logic. Implemented as a dictionary mapping data model names to a list of <code>CustomValidator</code> subclasses, for example:</p>
|
|
10488
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10489
|
-
<a id="__codelineno-
|
|
10490
|
-
<a id="__codelineno-
|
|
10491
|
-
<a id="__codelineno-
|
|
10517
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a><span class="p">{</span>
|
|
10518
|
+
<a id="__codelineno-7-2" name="__codelineno-7-2" href="#__codelineno-7-2"></a> <span class="s1">'circuits.circuit'</span><span class="p">:</span> <span class="p">[</span><span class="n">CircuitMustHaveDescriptionValidator</span><span class="p">],</span>
|
|
10519
|
+
<a id="__codelineno-7-3" name="__codelineno-7-3" href="#__codelineno-7-3"></a> <span class="s1">'dcim.location'</span><span class="p">:</span> <span class="p">[</span><span class="n">LocationMustHaveTenantValidator</span><span class="p">,</span> <span class="n">LocationNameMustIncludeCountryCodeValidator</span><span class="p">],</span>
|
|
10520
|
+
<a id="__codelineno-7-4" name="__codelineno-7-4" href="#__codelineno-7-4"></a><span class="p">}</span>
|
|
10492
10521
|
</code></pre></div>
|
|
10493
10522
|
<h3 id="plugin_graphql_types"><code>plugin_graphql_types</code><a class="headerlink" href="#plugin_graphql_types" title="Permanent link">¶</a></h3>
|
|
10494
10523
|
<p>List of GraphQL Type objects that will be added to the GraphQL schema. GraphQL objects that are defined in an App will be automatically registered into this registry. An example:</p>
|
|
10495
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10496
|
-
<a id="__codelineno-
|
|
10497
|
-
<a id="__codelineno-
|
|
10524
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a><span class="p">[</span>
|
|
10525
|
+
<a id="__codelineno-8-2" name="__codelineno-8-2" href="#__codelineno-8-2"></a> <span class="o"><</span><span class="n">DjangoObjectType</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">DjangoObjectType</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">OptimizedDjangoObjectType</span><span class="o">></span>
|
|
10526
|
+
<a id="__codelineno-8-3" name="__codelineno-8-3" href="#__codelineno-8-3"></a><span class="p">]</span>
|
|
10498
10527
|
</code></pre></div>
|
|
10499
10528
|
<details class="version-removed">
|
|
10500
10529
|
<summary>Removed in version 2.0.0</summary>
|
|
@@ -10502,14 +10531,14 @@
|
|
|
10502
10531
|
</details>
|
|
10503
10532
|
<h3 id="plugin_template_extensions"><code>plugin_template_extensions</code><a class="headerlink" href="#plugin_template_extensions" title="Permanent link">¶</a></h3>
|
|
10504
10533
|
<p>App content that gets embedded into core Nautobot templates. The store comprises Nautobot models registered as dictionary keys, each pointing to a list of applicable template extension classes that exist. An example:</p>
|
|
10505
|
-
<div class="highlight"><pre><span></span><code><a id="__codelineno-
|
|
10506
|
-
<a id="__codelineno-
|
|
10507
|
-
<a id="__codelineno-
|
|
10508
|
-
<a id="__codelineno-
|
|
10509
|
-
<a id="__codelineno-
|
|
10510
|
-
<a id="__codelineno-
|
|
10511
|
-
<a id="__codelineno-
|
|
10512
|
-
<a id="__codelineno-
|
|
10534
|
+
<div class="highlight"><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a><span class="p">{</span>
|
|
10535
|
+
<a id="__codelineno-9-2" name="__codelineno-9-2" href="#__codelineno-9-2"></a> <span class="s1">'dcim.location'</span><span class="p">:</span> <span class="p">[</span>
|
|
10536
|
+
<a id="__codelineno-9-3" name="__codelineno-9-3" href="#__codelineno-9-3"></a> <span class="o"><</span><span class="n">TemplateExtension</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">TemplateExtension</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">TemplateExtension</span><span class="o">></span><span class="p">,</span>
|
|
10537
|
+
<a id="__codelineno-9-4" name="__codelineno-9-4" href="#__codelineno-9-4"></a> <span class="p">],</span>
|
|
10538
|
+
<a id="__codelineno-9-5" name="__codelineno-9-5" href="#__codelineno-9-5"></a> <span class="s1">'dcim.rack'</span><span class="p">:</span> <span class="p">[</span>
|
|
10539
|
+
<a id="__codelineno-9-6" name="__codelineno-9-6" href="#__codelineno-9-6"></a> <span class="o"><</span><span class="n">TemplateExtension</span><span class="o">></span><span class="p">,</span> <span class="o"><</span><span class="n">TemplateExtension</span><span class="o">></span><span class="p">,</span>
|
|
10540
|
+
<a id="__codelineno-9-7" name="__codelineno-9-7" href="#__codelineno-9-7"></a> <span class="p">],</span>
|
|
10541
|
+
<a id="__codelineno-9-8" name="__codelineno-9-8" href="#__codelineno-9-8"></a><span class="p">}</span>
|
|
10513
10542
|
</code></pre></div>
|
|
10514
10543
|
|
|
10515
10544
|
|
|
@@ -10607,7 +10636,7 @@
|
|
|
10607
10636
|
|
|
10608
10637
|
|
|
10609
10638
|
<a href="https://blog.networktocode.com/blog/tags/nautobot" target="_blank" rel="noopener" title="Network to Code Blog" class="md-social__link">
|
|
10610
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free
|
|
10639
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64m0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0m32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32"/></svg>
|
|
10611
10640
|
</a>
|
|
10612
10641
|
|
|
10613
10642
|
|
|
@@ -10615,7 +10644,7 @@
|
|
|
10615
10644
|
|
|
10616
10645
|
|
|
10617
10646
|
<a href="https://www.youtube.com/playlist?list=PLjA0bhxgryJ2Ts4GJMDA-tPzVWEncv4pb" target="_blank" rel="noopener" title="Nautobot Videos" class="md-social__link">
|
|
10618
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free
|
|
10647
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M549.7 124.1c-6.2-23.7-24.8-42.3-48.3-48.6C458.9 64 288.1 64 288.1 64S117.3 64 74.7 75.5c-23.5 6.3-42 24.9-48.3 48.6C15 167 15 256.4 15 256.4s0 89.4 11.4 132.3c6.3 23.6 24.8 41.5 48.3 47.8C117.3 448 288.1 448 288.1 448s170.8 0 213.4-11.5c23.5-6.3 42-24.2 48.3-47.8 11.4-42.9 11.4-132.3 11.4-132.3s0-89.4-11.4-132.3zM232.2 337.6V175.2l142.7 81.2z"/></svg>
|
|
10619
10648
|
</a>
|
|
10620
10649
|
|
|
10621
10650
|
|
|
@@ -10623,7 +10652,7 @@
|
|
|
10623
10652
|
|
|
10624
10653
|
|
|
10625
10654
|
<a href="https://www.networktocode.com/community/" target="_blank" rel="noopener" title="Network to Code Community" class="md-social__link">
|
|
10626
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free
|
|
10655
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M94.1 315.1c0 25.9-21.2 47.1-47.1 47.1S0 341 0 315.1 21.2 268 47.1 268h47.1v47.1zm23.7 0c0-25.9 21.2-47.1 47.1-47.1s47.1 21.2 47.1 47.1v117.8c0 25.9-21.2 47.1-47.1 47.1s-47.1-21.2-47.1-47.1zm47.1-189c-25.9 0-47.1-21.2-47.1-47.1s21.2-47 47.1-47S212 53.2 212 79.1v47.1h-47.1zm0 23.7c25.9 0 47.1 21.2 47.1 47.1S190.8 244 164.9 244H47.1C21.2 244 0 222.8 0 196.9s21.2-47.1 47.1-47.1zm189 47.1c0-25.9 21.2-47.1 47.1-47.1s47 21.2 47 47.1-21.2 47.1-47.1 47.1h-47.1v-47.1zm-23.7 0c0 25.9-21.2 47.1-47.1 47.1S236 222.8 236 196.9V79.1c0-25.9 21.2-47.1 47.1-47.1s47.1 21.2 47.1 47.1zm-47.1 189c25.9 0 47.1 21.2 47.1 47.1s-21.2 47-47.1 47-47.1-21.2-47.1-47.1v-47.1h47.1zm0-23.7c-25.9 0-47.1-21.2-47.1-47.1s21.2-47.1 47.1-47.1h117.8c25.9 0 47.1 21.2 47.1 47.1s-21.2 47.1-47.1 47.1z"/></svg>
|
|
10627
10656
|
</a>
|
|
10628
10657
|
|
|
10629
10658
|
|
|
@@ -10631,7 +10660,7 @@
|
|
|
10631
10660
|
|
|
10632
10661
|
|
|
10633
10662
|
<a href="https://github.com/nautobot/nautobot" target="_blank" rel="noopener" title="GitHub Repo" class="md-social__link">
|
|
10634
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0
|
|
10663
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M173.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M252.8 8C114.1 8 8 113.3 8 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
|
|
10635
10664
|
</a>
|
|
10636
10665
|
|
|
10637
10666
|
|
|
@@ -10639,7 +10668,7 @@
|
|
|
10639
10668
|
|
|
10640
10669
|
|
|
10641
10670
|
<a href="https://twitter.com/networktocode" target="_blank" rel="noopener" title="Network to Code Twitter" class="md-social__link">
|
|
10642
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free
|
|
10671
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M459.4 151.7c.3 4.5.3 9.1.3 13.6 0 138.7-105.6 298.6-298.6 298.6-59.5 0-114.7-17.2-161.1-47.1 8.4 1 16.6 1.3 25.3 1.3 49.1 0 94.2-16.6 130.3-44.8-46.1-1-84.8-31.2-98.1-72.8 6.5 1 13 1.6 19.8 1.6 9.4 0 18.8-1.3 27.6-3.6-48.1-9.7-84.1-52-84.1-103v-1.3c14 7.8 30.2 12.7 47.4 13.3-28.3-18.8-46.8-51-46.8-87.4 0-19.5 5.2-37.4 14.3-53C87.4 130.8 165 172.4 252.1 176.9c-1.6-7.8-2.6-15.9-2.6-24C249.5 95.1 296.3 48 354.4 48c30.2 0 57.5 12.7 76.7 33.1 23.7-4.5 46.5-13.3 66.6-25.3-7.8 24.4-24.4 44.8-46.1 57.8 21.1-2.3 41.6-8.1 60.4-16.2-14.3 20.8-32.2 39.3-52.6 54.3"/></svg>
|
|
10643
10672
|
</a>
|
|
10644
10673
|
|
|
10645
10674
|
</div>
|
|
@@ -10659,7 +10688,7 @@
|
|
|
10659
10688
|
<script id="__config" type="application/json">{"base": "../..", "features": ["content.code.annotate", "content.code.copy", "content.tabs.link", "navigation.footer", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "search.highlight", "search.share", "search.suggest"], "search": "../../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
|
|
10660
10689
|
|
|
10661
10690
|
|
|
10662
|
-
<script src="../../assets/javascripts/bundle.
|
|
10691
|
+
<script src="../../assets/javascripts/bundle.50899def.min.js"></script>
|
|
10663
10692
|
|
|
10664
10693
|
|
|
10665
10694
|
<script id="init-glightbox">const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});
|