nautobot 2.3.15b1__py3-none-any.whl → 2.4.0__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/__init__.py +15 -0
- nautobot/apps/__init__.py +1 -1
- nautobot/apps/api.py +8 -10
- nautobot/apps/change_logging.py +2 -2
- nautobot/apps/choices.py +4 -4
- nautobot/apps/config.py +32 -3
- nautobot/apps/events.py +19 -0
- nautobot/apps/exceptions.py +0 -2
- nautobot/apps/factory.py +2 -2
- nautobot/apps/filters.py +1 -1
- nautobot/apps/forms.py +20 -20
- nautobot/apps/graphql.py +2 -2
- nautobot/apps/jobs.py +8 -8
- nautobot/apps/models.py +19 -19
- nautobot/apps/tables.py +1 -1
- nautobot/apps/testing.py +10 -10
- nautobot/apps/ui.py +44 -9
- nautobot/apps/utils.py +7 -15
- nautobot/apps/views.py +8 -6
- nautobot/circuits/api/serializers.py +1 -0
- nautobot/circuits/api/views.py +4 -8
- nautobot/circuits/navigation.py +0 -57
- nautobot/circuits/templates/circuits/circuit_create.html +1 -7
- nautobot/circuits/templates/circuits/circuit_retrieve.html +0 -71
- nautobot/circuits/templates/circuits/inc/circuit_termination.html +6 -64
- nautobot/circuits/templates/circuits/inc/circuit_termination_cable_fragment.html +40 -0
- nautobot/circuits/templates/circuits/inc/circuit_termination_header_extra_content.html +26 -0
- nautobot/circuits/templates/circuits/provider_retrieve.html +0 -76
- nautobot/circuits/tests/integration/test_relationships.py +33 -24
- nautobot/circuits/tests/test_filters.py +4 -8
- nautobot/circuits/views.py +143 -26
- nautobot/cloud/api/views.py +6 -10
- nautobot/cloud/factory.py +4 -1
- nautobot/cloud/models.py +1 -1
- nautobot/cloud/tests/test_filters.py +5 -4
- nautobot/cloud/views.py +0 -16
- nautobot/core/api/constants.py +11 -0
- nautobot/core/api/fields.py +5 -5
- nautobot/core/api/filter_backends.py +3 -9
- nautobot/core/api/metadata.py +28 -256
- nautobot/core/api/pagination.py +3 -2
- nautobot/core/api/renderers.py +3 -0
- nautobot/core/api/schema.py +13 -2
- nautobot/core/api/serializers.py +54 -268
- nautobot/core/api/urls.py +3 -4
- nautobot/core/api/utils.py +0 -62
- nautobot/core/api/views.py +102 -159
- nautobot/core/apps/__init__.py +22 -575
- nautobot/core/celery/__init__.py +13 -0
- nautobot/core/celery/schedulers.py +48 -3
- nautobot/core/choices.py +2 -2
- nautobot/core/cli/__init__.py +8 -0
- nautobot/core/constants.py +7 -0
- nautobot/core/events/__init__.py +116 -0
- nautobot/core/events/base.py +27 -0
- nautobot/core/events/exceptions.py +10 -0
- nautobot/core/events/redis_broker.py +48 -0
- nautobot/core/events/syslog_broker.py +19 -0
- nautobot/core/exceptions.py +0 -6
- nautobot/core/filters.py +19 -16
- nautobot/core/forms/__init__.py +19 -19
- nautobot/core/forms/fields.py +62 -14
- nautobot/core/forms/forms.py +33 -2
- nautobot/core/forms/utils.py +2 -1
- nautobot/core/graphql/schema.py +3 -1
- nautobot/core/graphql/types.py +1 -1
- nautobot/core/jobs/__init__.py +28 -7
- nautobot/core/jobs/bulk_actions.py +248 -0
- nautobot/core/jobs/cleanup.py +2 -2
- nautobot/core/jobs/groups.py +1 -1
- nautobot/core/management/commands/generate_test_data.py +21 -0
- nautobot/core/management/commands/validate_models.py +1 -1
- nautobot/core/middleware.py +16 -0
- nautobot/core/models/__init__.py +1 -1
- nautobot/core/models/fields.py +11 -7
- nautobot/core/models/query_functions.py +2 -2
- nautobot/core/models/tree_queries.py +2 -2
- nautobot/core/settings.py +71 -4
- nautobot/core/settings.yaml +107 -0
- nautobot/core/tables.py +15 -51
- nautobot/core/tasks.py +1 -1
- nautobot/core/templates/about.html +67 -0
- nautobot/core/templates/components/button/default.html +7 -0
- nautobot/core/templates/components/button/dropdown.html +20 -0
- nautobot/core/templates/components/layout/one_over_two.html +19 -0
- nautobot/core/templates/components/layout/two_over_one.html +19 -0
- nautobot/core/templates/components/panel/body_content_data_table.html +27 -0
- nautobot/core/templates/components/panel/body_content_objects_table.html +4 -0
- nautobot/core/templates/components/panel/body_content_tags.html +6 -0
- nautobot/core/templates/components/panel/body_content_text.html +12 -0
- nautobot/core/templates/components/panel/body_wrapper_generic.html +3 -0
- nautobot/core/templates/components/panel/body_wrapper_key_value_table.html +3 -0
- nautobot/core/templates/components/panel/body_wrapper_table.html +3 -0
- nautobot/core/templates/components/panel/footer_contacts_table.html +20 -0
- nautobot/core/templates/components/panel/footer_content_table.html +14 -0
- nautobot/core/templates/components/panel/grouping_toggle.html +14 -0
- nautobot/core/templates/components/panel/header_extra_content_table.html +3 -0
- nautobot/core/templates/components/panel/panel.html +16 -0
- nautobot/core/templates/components/panel/stats_panel_body.html +8 -0
- nautobot/core/templates/components/tab/content_wrapper.html +3 -0
- nautobot/core/templates/components/tab/label_wrapper.html +5 -0
- nautobot/core/templates/components/tab/label_wrapper_distinct_view.html +3 -0
- nautobot/core/templates/generic/object_retrieve.html +28 -17
- nautobot/core/templates/inc/computed_fields/panel_data.html +4 -7
- nautobot/core/templates/inc/custom_fields/panel.html +2 -2
- nautobot/core/templates/inc/custom_fields/panel_data.html +4 -7
- nautobot/core/templates/inc/footer.html +1 -0
- nautobot/core/templates/inc/media.html +3 -0
- nautobot/core/templates/inc/nav_menu.html +2 -1
- nautobot/core/templates/inc/relationships_panel.html +1 -1
- nautobot/core/templates/inc/tenancy_form_panel.html +9 -0
- nautobot/core/templates/inc/tenant_table_row.html +11 -0
- nautobot/core/templates/nautobot_config.py.j2 +16 -0
- nautobot/core/templates/panel_table.html +12 -0
- nautobot/core/templates/utilities/render_jinja2.html +117 -0
- nautobot/core/templates/utilities/templatetags/tag.html +1 -1
- nautobot/core/templates/utilities/theme_preview.html +7 -0
- nautobot/core/templatetags/helpers.py +104 -6
- nautobot/core/templatetags/ui_framework.py +40 -0
- nautobot/core/testing/__init__.py +8 -8
- nautobot/core/testing/api.py +187 -137
- nautobot/core/testing/context.py +18 -0
- nautobot/core/testing/filters.py +44 -34
- nautobot/core/testing/forms.py +2 -0
- nautobot/core/testing/views.py +68 -146
- nautobot/core/tests/integration/test_app_home.py +0 -1
- nautobot/core/tests/integration/test_app_navbar.py +0 -1
- nautobot/core/tests/integration/test_filters.py +0 -2
- nautobot/core/tests/integration/test_home.py +0 -1
- nautobot/core/tests/integration/test_navbar.py +0 -1
- nautobot/core/tests/integration/test_view_authentication.py +2 -1
- nautobot/core/tests/nautobot_config.py +198 -0
- nautobot/core/tests/runner.py +3 -3
- nautobot/core/tests/test_api.py +154 -176
- nautobot/core/tests/test_events.py +214 -0
- nautobot/core/tests/test_forms.py +1 -0
- nautobot/core/tests/test_jinja_filters.py +1 -0
- nautobot/core/tests/test_jobs.py +387 -14
- nautobot/core/tests/test_navigations.py +7 -241
- nautobot/core/tests/test_settings_schema.py +7 -0
- nautobot/core/tests/test_tables.py +100 -0
- nautobot/core/tests/test_templatetags_helpers.py +16 -0
- nautobot/core/tests/test_ui.py +150 -0
- nautobot/core/tests/test_utils.py +55 -18
- nautobot/core/tests/test_views.py +153 -5
- nautobot/core/ui/__init__.py +0 -0
- nautobot/core/ui/base.py +11 -0
- nautobot/core/ui/choices.py +44 -0
- nautobot/core/ui/homepage.py +167 -0
- nautobot/core/ui/nav.py +280 -0
- nautobot/core/ui/object_detail.py +1855 -0
- nautobot/core/ui/utils.py +36 -0
- nautobot/core/urls.py +15 -0
- nautobot/core/utils/config.py +30 -3
- nautobot/core/utils/lookup.py +12 -2
- nautobot/core/utils/querysets.py +64 -0
- nautobot/core/utils/requests.py +24 -9
- nautobot/core/views/__init__.py +48 -1
- nautobot/core/views/generic.py +82 -177
- nautobot/core/views/mixins.py +98 -38
- nautobot/core/views/paginator.py +8 -5
- nautobot/core/views/renderers.py +9 -9
- nautobot/core/views/utils.py +11 -0
- nautobot/core/wsgi.py +3 -3
- nautobot/dcim/api/serializers.py +82 -189
- nautobot/dcim/api/urls.py +5 -0
- nautobot/dcim/api/views.py +57 -110
- nautobot/dcim/apps.py +1 -0
- nautobot/dcim/choices.py +28 -0
- nautobot/dcim/factory.py +58 -0
- nautobot/dcim/filters/__init__.py +204 -2
- nautobot/dcim/forms.py +221 -9
- nautobot/dcim/graphql/types.py +2 -2
- nautobot/dcim/migrations/0063_interfacevdcassignment_virtualdevicecontext_and_more.py +165 -0
- nautobot/dcim/migrations/0064_virtualdevicecontext_status_data_migration.py +28 -0
- nautobot/dcim/migrations/0065_controller_capabilities_and_more.py +29 -0
- nautobot/dcim/migrations/0066_controllermanageddevicegroup_radio_profiles_and_more.py +33 -0
- nautobot/dcim/migrations/0067_controllermanageddevicegroup_tenant.py +25 -0
- nautobot/dcim/models/__init__.py +5 -1
- nautobot/dcim/models/device_component_templates.py +2 -2
- nautobot/dcim/models/device_components.py +22 -20
- nautobot/dcim/models/devices.py +181 -3
- nautobot/dcim/models/locations.py +3 -3
- nautobot/dcim/models/power.py +6 -5
- nautobot/dcim/models/racks.py +6 -6
- nautobot/dcim/navigation.py +25 -224
- nautobot/dcim/signals.py +44 -0
- nautobot/dcim/tables/__init__.py +5 -3
- nautobot/dcim/tables/devices.py +103 -7
- nautobot/dcim/tables/devicetypes.py +2 -2
- nautobot/dcim/tables/racks.py +1 -1
- nautobot/dcim/templates/dcim/controller/base.html +10 -0
- nautobot/dcim/templates/dcim/controller_create.html +2 -7
- nautobot/dcim/templates/dcim/controller_retrieve.html +6 -10
- nautobot/dcim/templates/dcim/controller_wirelessnetworks.html +25 -0
- nautobot/dcim/templates/dcim/controllermanageddevicegroup_create.html +68 -0
- nautobot/dcim/templates/dcim/controllermanageddevicegroup_retrieve.html +51 -0
- nautobot/dcim/templates/dcim/device/base.html +6 -42
- nautobot/dcim/templates/dcim/device/wireless.html +73 -0
- nautobot/dcim/templates/dcim/device.html +4 -10
- nautobot/dcim/templates/dcim/device_edit.html +36 -37
- nautobot/dcim/templates/dcim/interface.html +1 -0
- nautobot/dcim/templates/dcim/interface_edit.html +1 -0
- nautobot/dcim/templates/dcim/location.html +1 -9
- nautobot/dcim/templates/dcim/location_edit.html +1 -7
- nautobot/dcim/templates/dcim/locationtype.html +0 -107
- nautobot/dcim/templates/dcim/locationtype_retrieve.html +8 -0
- nautobot/dcim/templates/dcim/rack.html +1 -9
- nautobot/dcim/templates/dcim/rack_edit.html +1 -7
- nautobot/dcim/templates/dcim/rackreservation.html +1 -9
- nautobot/dcim/templates/dcim/virtualdevicecontext_retrieve.html +68 -0
- nautobot/dcim/templates/dcim/virtualdevicecontext_update.html +28 -0
- nautobot/dcim/tests/integration/test_controller.py +62 -0
- nautobot/dcim/tests/integration/test_controller_managed_device_group.py +71 -0
- nautobot/dcim/tests/test_api.py +188 -64
- nautobot/dcim/tests/test_filters.py +172 -76
- nautobot/dcim/tests/test_graphql.py +52 -0
- nautobot/dcim/tests/test_jobs.py +118 -0
- nautobot/dcim/tests/test_models.py +159 -5
- nautobot/dcim/tests/test_signals.py +1 -0
- nautobot/dcim/tests/test_views.py +118 -88
- nautobot/dcim/urls.py +72 -27
- nautobot/dcim/utils.py +2 -2
- nautobot/dcim/views.py +357 -62
- nautobot/extras/api/customfields.py +2 -2
- nautobot/extras/api/serializers.py +111 -87
- nautobot/extras/api/urls.py +4 -0
- nautobot/extras/api/views.py +93 -35
- nautobot/extras/choices.py +13 -0
- nautobot/extras/constants.py +2 -1
- nautobot/extras/context_managers.py +23 -6
- nautobot/extras/datasources/git.py +4 -1
- nautobot/extras/factory.py +27 -0
- nautobot/extras/filters/__init__.py +66 -5
- nautobot/extras/forms/base.py +2 -2
- nautobot/extras/forms/forms.py +262 -59
- nautobot/extras/forms/mixins.py +3 -3
- nautobot/extras/graphql/types.py +25 -1
- nautobot/extras/health_checks.py +1 -2
- nautobot/extras/jobs.py +114 -20
- nautobot/extras/management/__init__.py +1 -0
- nautobot/extras/management/commands/runjob.py +7 -79
- nautobot/extras/management/commands/runjob_with_job_result.py +46 -0
- nautobot/extras/management/utils.py +87 -0
- nautobot/extras/managers.py +3 -1
- nautobot/extras/migrations/0018_joblog_data_migration.py +7 -9
- nautobot/extras/migrations/0117_create_job_queue_model.py +129 -0
- nautobot/extras/migrations/0118_task_queue_to_job_queue_migration.py +78 -0
- nautobot/extras/migrations/0119_remove_task_queues_from_job_and_queue_from_scheduled_job.py +28 -0
- nautobot/extras/migrations/0120_job_is_singleton_job_is_singleton_override.py +22 -0
- nautobot/extras/migrations/0121_alter_team_contacts.py +17 -0
- nautobot/extras/models/__init__.py +5 -1
- nautobot/extras/models/change_logging.py +7 -3
- nautobot/extras/models/contacts.py +1 -1
- nautobot/extras/models/customfields.py +12 -11
- nautobot/extras/models/groups.py +11 -9
- nautobot/extras/models/jobs.py +237 -37
- nautobot/extras/models/models.py +2 -2
- nautobot/extras/models/relationships.py +69 -1
- nautobot/extras/models/secrets.py +5 -0
- nautobot/extras/navigation.py +20 -262
- nautobot/extras/plugins/__init__.py +54 -19
- nautobot/extras/plugins/marketplace_manifest.yml +455 -0
- nautobot/extras/plugins/tables.py +16 -14
- nautobot/extras/plugins/urls.py +1 -0
- nautobot/extras/plugins/views.py +104 -61
- nautobot/extras/registry.py +1 -1
- nautobot/extras/secrets/__init__.py +2 -2
- nautobot/extras/signals.py +39 -1
- nautobot/extras/tables.py +42 -6
- nautobot/extras/templates/extras/dynamicgroup.html +1 -9
- nautobot/extras/templates/extras/externalintegration_retrieve.html +0 -47
- nautobot/extras/templates/extras/inc/tags_panel.html +1 -5
- nautobot/extras/templates/extras/job_bulk_edit.html +2 -1
- nautobot/extras/templates/extras/job_detail.html +52 -6
- nautobot/extras/templates/extras/job_edit.html +6 -2
- nautobot/extras/templates/extras/job_list.html +2 -7
- nautobot/extras/templates/extras/jobqueue_retrieve.html +36 -0
- nautobot/extras/templates/extras/marketplace.html +296 -0
- nautobot/extras/templates/extras/plugin_detail.html +32 -15
- nautobot/extras/templates/extras/plugins_list.html +35 -1
- nautobot/extras/templates/extras/plugins_tiles.html +90 -0
- nautobot/extras/templates/extras/role_retrieve.html +16 -0
- nautobot/extras/templates/extras/secret.html +0 -65
- nautobot/extras/templates/extras/secret_check.js +16 -0
- nautobot/extras/templates/extras/secret_create.html +114 -0
- nautobot/extras/templates/extras/secret_edit.html +1 -114
- nautobot/extras/templates/extras/secretsgroup_edit.html +1 -1
- nautobot/extras/templates/extras/templatetags/plugin_object_detail_tabs.html +2 -0
- nautobot/extras/templatetags/job_buttons.py +5 -4
- nautobot/extras/templatetags/plugins.py +69 -6
- nautobot/extras/test_jobs/api_test_job.py +1 -1
- nautobot/extras/test_jobs/atomic_transaction.py +2 -2
- nautobot/extras/test_jobs/dry_run.py +1 -1
- nautobot/extras/test_jobs/fail.py +5 -5
- nautobot/extras/test_jobs/file_output.py +1 -1
- nautobot/extras/test_jobs/file_upload_fail.py +1 -1
- nautobot/extras/test_jobs/file_upload_pass.py +1 -1
- nautobot/extras/test_jobs/ipaddress_vars.py +3 -1
- nautobot/extras/test_jobs/jobs_module/jobs_submodule/jobs.py +1 -1
- nautobot/extras/test_jobs/location_with_custom_field.py +1 -1
- nautobot/extras/test_jobs/log_redaction.py +1 -1
- nautobot/extras/test_jobs/log_skip_db_logging.py +1 -1
- nautobot/extras/test_jobs/modify_db.py +1 -1
- nautobot/extras/test_jobs/object_var_optional.py +1 -1
- nautobot/extras/test_jobs/object_var_required.py +1 -1
- nautobot/extras/test_jobs/object_vars.py +1 -1
- nautobot/extras/test_jobs/pass.py +3 -3
- nautobot/extras/test_jobs/profiling.py +1 -1
- nautobot/extras/test_jobs/relative_import.py +3 -3
- nautobot/extras/test_jobs/singleton.py +16 -0
- nautobot/extras/test_jobs/soft_time_limit_greater_than_time_limit.py +1 -1
- nautobot/extras/test_jobs/task_queues.py +1 -1
- nautobot/extras/tests/integration/test_plugin_banner.py +0 -2
- nautobot/extras/tests/test_api.py +157 -55
- nautobot/extras/tests/test_context_managers.py +4 -1
- nautobot/extras/tests/test_customfields.py +1 -1
- nautobot/extras/tests/test_datasources.py +2 -1
- nautobot/extras/tests/test_dynamicgroups.py +1 -1
- nautobot/extras/tests/test_filters.py +219 -535
- nautobot/extras/tests/test_forms.py +20 -1
- nautobot/extras/tests/test_job_variables.py +73 -152
- nautobot/extras/tests/test_jobs.py +192 -62
- nautobot/extras/tests/test_models.py +71 -16
- nautobot/extras/tests/test_plugins.py +62 -9
- nautobot/extras/tests/test_relationships.py +124 -10
- nautobot/extras/tests/test_utils.py +23 -2
- nautobot/extras/tests/test_views.py +162 -161
- nautobot/extras/tests/test_webhooks.py +2 -1
- nautobot/extras/urls.py +2 -20
- nautobot/extras/utils.py +119 -4
- nautobot/extras/views.py +188 -141
- nautobot/extras/webhooks.py +5 -2
- nautobot/ipam/api/fields.py +3 -3
- nautobot/ipam/api/serializers.py +44 -137
- nautobot/ipam/api/views.py +68 -110
- nautobot/ipam/factory.py +1 -1
- nautobot/ipam/filters.py +3 -2
- nautobot/ipam/models.py +10 -12
- nautobot/ipam/navigation.py +0 -90
- nautobot/ipam/querysets.py +2 -2
- nautobot/ipam/tables.py +3 -1
- nautobot/ipam/templates/ipam/ipaddress.html +1 -9
- nautobot/ipam/templates/ipam/ipaddress_bulk_add.html +1 -7
- nautobot/ipam/templates/ipam/ipaddress_edit.html +1 -7
- nautobot/ipam/templates/ipam/prefix.html +1 -9
- nautobot/ipam/templates/ipam/prefix_edit.html +1 -7
- nautobot/ipam/templates/ipam/routetarget.html +0 -28
- nautobot/ipam/templates/ipam/vlan.html +1 -9
- nautobot/ipam/templates/ipam/vlan_edit.html +1 -7
- nautobot/ipam/templates/ipam/vrf.html +0 -47
- nautobot/ipam/templates/ipam/vrf_edit.html +1 -7
- nautobot/ipam/tests/test_api.py +19 -6
- nautobot/ipam/tests/test_filters.py +39 -119
- nautobot/ipam/tests/test_forms.py +49 -47
- nautobot/ipam/tests/test_migrations.py +30 -30
- nautobot/ipam/tests/test_models.py +56 -36
- nautobot/ipam/tests/test_querysets.py +14 -0
- nautobot/ipam/tests/test_views.py +3 -0
- nautobot/ipam/urls.py +3 -69
- nautobot/ipam/utils/__init__.py +16 -10
- nautobot/ipam/views.py +91 -162
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css +40 -2
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css.map +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css +1 -1
- nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +1 -1
- nautobot/project-static/css/base.css +38 -3
- nautobot/project-static/docs/404.html +463 -19
- nautobot/project-static/docs/apps/index.html +463 -19
- nautobot/project-static/docs/apps/nautobot-apps.html +464 -21
- nautobot/project-static/docs/assets/_mkdocstrings.css +25 -1
- nautobot/project-static/docs/assets/extra.css +5 -1
- nautobot/project-static/docs/assets/javascripts/{bundle.83f73b43.min.js → bundle.88dd0f4e.min.js} +2 -2
- nautobot/project-static/docs/assets/javascripts/{bundle.83f73b43.min.js.map → bundle.88dd0f4e.min.js.map} +2 -2
- nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +479 -25
- nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +476 -22
- nautobot/project-static/docs/code-reference/nautobot/apps/api.html +792 -291
- nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +507 -33
- nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +512 -36
- nautobot/project-static/docs/code-reference/nautobot/apps/config.html +473 -22
- nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +469 -20
- nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +499 -35
- nautobot/project-static/docs/code-reference/nautobot/apps/events.html +9883 -0
- nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +525 -77
- nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +548 -53
- nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +672 -96
- nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +1033 -180
- nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +526 -51
- nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +876 -190
- nautobot/project-static/docs/code-reference/nautobot/apps/models.html +957 -237
- nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +477 -23
- nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +488 -30
- nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +663 -101
- nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +949 -481
- nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +6427 -1236
- nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +476 -22
- nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +879 -346
- nautobot/project-static/docs/code-reference/nautobot/apps/views.html +830 -173
- nautobot/project-static/docs/development/apps/api/configuration-view.html +463 -19
- nautobot/project-static/docs/development/apps/api/database-backend-config.html +463 -19
- nautobot/project-static/docs/development/apps/api/models/django-admin.html +463 -19
- nautobot/project-static/docs/development/apps/api/models/global-search.html +463 -19
- nautobot/project-static/docs/development/apps/api/models/graphql.html +463 -19
- nautobot/project-static/docs/development/apps/api/models/index.html +463 -19
- nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/index.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/table-extensions.html +463 -19
- nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +463 -19
- nautobot/project-static/docs/development/apps/api/prometheus.html +463 -19
- nautobot/project-static/docs/development/apps/api/setup.html +467 -155
- nautobot/project-static/docs/development/apps/api/testing.html +463 -19
- nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +463 -19
- nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +463 -19
- nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +463 -19
- nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +463 -19
- nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +743 -130
- nautobot/project-static/docs/development/apps/api/views/base-template.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/help-documentation.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/index.html +465 -20
- nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +467 -19
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +493 -19
- nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/notes.html +463 -19
- nautobot/project-static/docs/development/apps/api/views/rest-api.html +469 -21
- nautobot/project-static/docs/development/apps/api/views/urls.html +463 -19
- nautobot/project-static/docs/development/apps/index.html +463 -19
- nautobot/project-static/docs/development/apps/migration/code-updates.html +464 -52
- nautobot/project-static/docs/development/apps/migration/dependency-updates.html +464 -20
- nautobot/project-static/docs/development/apps/migration/from-v1.html +463 -19
- nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +463 -19
- nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +463 -19
- nautobot/project-static/docs/development/apps/migration/model-updates/global.html +463 -19
- nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +466 -22
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/best-practices.html +9261 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/custom-content.html +9375 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/index.html +9671 -0
- nautobot/project-static/docs/development/apps/migration/ui-component-framework/migration-steps.html +9559 -0
- nautobot/project-static/docs/development/apps/porting-from-netbox.html +466 -22
- nautobot/project-static/docs/development/core/application-registry.html +463 -19
- nautobot/project-static/docs/development/core/best-practices.html +463 -19
- nautobot/project-static/docs/development/core/bootstrap-ui.html +463 -19
- nautobot/project-static/docs/development/core/caching.html +463 -19
- nautobot/project-static/docs/development/core/controllers.html +465 -19
- nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +491 -90
- nautobot/project-static/docs/development/core/generic-views.html +463 -19
- nautobot/project-static/docs/development/core/getting-started.html +541 -129
- nautobot/project-static/docs/development/core/homepage.html +474 -30
- nautobot/project-static/docs/development/core/index.html +463 -19
- nautobot/project-static/docs/development/core/minikube-dev-environment-for-k8s-jobs.html +9754 -0
- nautobot/project-static/docs/development/core/model-checklist.html +473 -27
- nautobot/project-static/docs/development/core/model-features.html +463 -19
- nautobot/project-static/docs/development/core/natural-keys.html +463 -19
- nautobot/project-static/docs/development/core/navigation-menu.html +480 -26
- nautobot/project-static/docs/development/core/release-checklist.html +480 -48
- nautobot/project-static/docs/development/core/role-internals.html +463 -19
- nautobot/project-static/docs/development/core/settings.html +463 -19
- nautobot/project-static/docs/development/core/style-guide.html +466 -22
- nautobot/project-static/docs/development/core/templates.html +473 -22
- nautobot/project-static/docs/development/core/testing.html +463 -19
- nautobot/project-static/docs/development/core/ui-component-framework.html +11116 -0
- nautobot/project-static/docs/development/core/user-preferences.html +466 -22
- nautobot/project-static/docs/development/index.html +463 -19
- nautobot/project-static/docs/development/jobs/index.html +501 -21
- nautobot/project-static/docs/development/jobs/migration/from-v1.html +463 -19
- nautobot/project-static/docs/index.html +471 -38
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_edit.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_edit_button.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_list_nav.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_list_view.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue_add.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_queue_config.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_completed.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_nav.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_result_pending.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_job_run_form.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_nautobot_login.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_run_job.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_run_scheduled_job_form.png +0 -0
- nautobot/project-static/docs/media/development/core/kubernetes/k8s_scheduled_job_result.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/basic-panel-layout.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/button-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/buttons-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/cluster-type-before-after-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/dropdown-button-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/grouped-key-value-table-panel-example-1.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/grouped-key-value-table-panel-example-2.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/object-fields-panel-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/object-fields-panel-example_2.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/stats-panel-example-code.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/stats-panel-example.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/table-panels-family.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/text-panels-family.png +0 -0
- nautobot/project-static/docs/media/development/core/ui-component-framework/ui-framework-example.png +0 -0
- nautobot/project-static/docs/media/models/virtual_device_context_overview.drawio +73 -0
- nautobot/project-static/docs/media/models/virtual_device_context_overview.png +0 -0
- nautobot/project-static/docs/models/dcim/virtualdevicecontext.html +14 -0
- nautobot/project-static/docs/models/extras/jobqueue.html +14 -0
- nautobot/project-static/docs/models/wireless/radioprofile.html +14 -0
- nautobot/project-static/docs/models/wireless/supporteddatarate.html +14 -0
- nautobot/project-static/docs/models/wireless/wirelessnetwork.html +14 -0
- nautobot/project-static/docs/objects.inv +0 -0
- nautobot/project-static/docs/overview/application_stack.html +469 -23
- nautobot/project-static/docs/overview/design_philosophy.html +463 -19
- nautobot/project-static/docs/release-notes/index.html +485 -22
- nautobot/project-static/docs/release-notes/version-1.0.html +651 -208
- nautobot/project-static/docs/release-notes/version-1.1.html +648 -205
- nautobot/project-static/docs/release-notes/version-1.2.html +723 -280
- nautobot/project-static/docs/release-notes/version-1.3.html +749 -306
- nautobot/project-static/docs/release-notes/version-1.4.html +834 -392
- nautobot/project-static/docs/release-notes/version-1.5.html +1022 -581
- nautobot/project-static/docs/release-notes/version-1.6.html +942 -518
- nautobot/project-static/docs/release-notes/version-2.0.html +945 -504
- nautobot/project-static/docs/release-notes/version-2.1.html +780 -339
- nautobot/project-static/docs/release-notes/version-2.2.html +773 -332
- nautobot/project-static/docs/release-notes/version-2.3.html +1142 -448
- nautobot/project-static/docs/release-notes/version-2.4.html +10323 -0
- nautobot/project-static/docs/requirements.txt +2 -2
- nautobot/project-static/docs/search/search_index.json +1 -1
- nautobot/project-static/docs/sitemap.xml +342 -270
- nautobot/project-static/docs/sitemap.xml.gz +0 -0
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +463 -19
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +463 -19
- nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +463 -19
- nautobot/project-static/docs/user-guide/administration/configuration/index.html +475 -32
- nautobot/project-static/docs/user-guide/administration/configuration/redis.html +463 -19
- nautobot/project-static/docs/user-guide/administration/configuration/settings.html +894 -180
- nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/docker.html +476 -29
- nautobot/project-static/docs/user-guide/administration/guides/health-checks.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/permissions.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +463 -19
- nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +465 -21
- nautobot/project-static/docs/user-guide/administration/guides/selinux-troubleshooting.html +463 -19
- nautobot/project-static/docs/user-guide/administration/installation/app-install.html +463 -19
- nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +463 -19
- nautobot/project-static/docs/user-guide/administration/installation/http-server.html +483 -23
- nautobot/project-static/docs/user-guide/administration/installation/index.html +468 -20
- nautobot/project-static/docs/user-guide/administration/installation/install_system.html +464 -20
- nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +463 -19
- nautobot/project-static/docs/user-guide/administration/installation/services.html +463 -19
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +463 -19
- nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +484 -41
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +477 -66
- nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +477 -66
- nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +466 -23
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-nautobot-app-location.yaml +0 -16
- nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +463 -19
- nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +469 -21
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +499 -20
- nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +489 -22
- nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualdevicecontext.html +9375 -0
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +470 -30
- nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +466 -22
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +463 -19
- nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +466 -22
- nautobot/project-static/docs/user-guide/core-data-model/wireless/index.html +9313 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/radioprofile.html +9217 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/supporteddatarate.html +9211 -0
- nautobot/project-static/docs/user-guide/core-data-model/wireless/wirelessnetwork.html +9277 -0
- nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +468 -22
- nautobot/project-static/docs/user-guide/feature-guides/graphql.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/central-mode.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-create-1.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/device-group-create-2.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/radio-profile-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/radio-profile-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/supported-data-rate-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/supported-data-rate-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-create-1.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-controller-create-2.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-network-add.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/images/wireless/wireless-network-create.png +0 -0
- nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/relationships.html +463 -19
- nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +466 -22
- nautobot/project-static/docs/user-guide/feature-guides/wireless-networks-and-controllers.html +9444 -0
- nautobot/project-static/docs/user-guide/index.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +467 -23
- nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/events.html +9617 -0
- nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +472 -23
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobqueue.html +9224 -0
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/kubernetes-job-support.html +9722 -0
- nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/note.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/objectmetadata.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +467 -23
- nautobot/project-static/docs/user-guide/platform-functionality/rendering-jinja-templates.html +9292 -0
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +511 -40
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +494 -23
- nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/role.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/secret.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +466 -22
- nautobot/project-static/docs/user-guide/platform-functionality/status.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/tag.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +531 -56
- nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +463 -19
- nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +463 -19
- nautobot/project-static/img/jinja_logo.svg +97 -0
- nautobot/project-static/js/forms.js +6 -1
- nautobot/project-static/js/nav_menu.js +2 -1
- nautobot/tenancy/api/serializers.py +0 -2
- nautobot/tenancy/api/views.py +9 -13
- nautobot/tenancy/factory.py +1 -1
- nautobot/tenancy/navigation.py +0 -29
- nautobot/tenancy/templates/tenancy/tenant.html +4 -91
- nautobot/tenancy/tests/test_filters.py +29 -134
- nautobot/tenancy/views.py +35 -24
- nautobot/users/admin.py +3 -1
- nautobot/users/api/serializers.py +4 -4
- nautobot/users/api/views.py +3 -3
- nautobot/users/forms.py +19 -0
- nautobot/users/templates/users/preferences.html +22 -0
- nautobot/users/tests/test_filters.py +1 -19
- nautobot/users/tests/test_views.py +57 -0
- nautobot/users/utils.py +8 -0
- nautobot/users/views.py +48 -11
- nautobot/virtualization/api/serializers.py +4 -4
- nautobot/virtualization/api/views.py +5 -24
- nautobot/virtualization/filters.py +1 -2
- nautobot/virtualization/models.py +1 -1
- nautobot/virtualization/navigation.py +0 -48
- nautobot/virtualization/tables.py +2 -2
- nautobot/virtualization/templates/virtualization/cluster_edit.html +1 -7
- nautobot/virtualization/templates/virtualization/clustertype.html +0 -39
- nautobot/virtualization/templates/virtualization/virtualmachine.html +1 -9
- nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +2 -8
- nautobot/virtualization/tests/test_filters.py +57 -166
- nautobot/virtualization/views.py +18 -15
- nautobot/wireless/__init__.py +0 -0
- nautobot/wireless/api/__init__.py +0 -0
- nautobot/wireless/api/serializers.py +44 -0
- nautobot/wireless/api/urls.py +20 -0
- nautobot/wireless/api/views.py +34 -0
- nautobot/wireless/apps.py +8 -0
- nautobot/wireless/choices.py +345 -0
- nautobot/wireless/factory.py +138 -0
- nautobot/wireless/filters.py +167 -0
- nautobot/wireless/forms.py +283 -0
- nautobot/wireless/homepage.py +19 -0
- nautobot/wireless/migrations/0001_initial.py +223 -0
- nautobot/wireless/migrations/__init__.py +0 -0
- nautobot/wireless/models.py +207 -0
- nautobot/wireless/navigation.py +105 -0
- nautobot/wireless/tables.py +244 -0
- nautobot/wireless/templates/wireless/radioprofile_retrieve.html +81 -0
- nautobot/wireless/templates/wireless/supporteddatarate_retrieve.html +26 -0
- nautobot/wireless/templates/wireless/wirelessnetwork_create.html +88 -0
- nautobot/wireless/templates/wireless/wirelessnetwork_retrieve.html +56 -0
- nautobot/wireless/tests/__init__.py +0 -0
- nautobot/wireless/tests/integration/__init__.py +0 -0
- nautobot/wireless/tests/integration/test_radio_profile.py +42 -0
- nautobot/wireless/tests/test_api.py +247 -0
- nautobot/wireless/tests/test_filters.py +82 -0
- nautobot/wireless/tests/test_models.py +22 -0
- nautobot/wireless/tests/test_views.py +378 -0
- nautobot/wireless/urls.py +13 -0
- nautobot/wireless/views.py +119 -0
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.dist-info}/METADATA +11 -13
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.dist-info}/RECORD +783 -613
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.dist-info}/WHEEL +1 -1
- nautobot/core/fixtures/user-data.json +0 -59
- nautobot/core/utils/navigation.py +0 -54
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.dist-info}/LICENSE.txt +0 -0
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.dist-info}/NOTICE +0 -0
- {nautobot-2.3.15b1.dist-info → nautobot-2.4.0.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.5.
|
|
21
|
+
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.49">
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
@@ -2112,6 +2112,27 @@
|
|
|
2112
2112
|
|
|
2113
2113
|
|
|
2114
2114
|
|
|
2115
|
+
|
|
2116
|
+
|
|
2117
|
+
|
|
2118
|
+
|
|
2119
|
+
|
|
2120
|
+
|
|
2121
|
+
<li class="md-nav__item">
|
|
2122
|
+
<a href="../../../user-guide/feature-guides/wireless-networks-and-controllers.html" class="md-nav__link">
|
|
2123
|
+
|
|
2124
|
+
|
|
2125
|
+
<span class="md-ellipsis">
|
|
2126
|
+
Wireless Networks and Controllers
|
|
2127
|
+
</span>
|
|
2128
|
+
|
|
2129
|
+
|
|
2130
|
+
</a>
|
|
2131
|
+
</li>
|
|
2132
|
+
|
|
2133
|
+
|
|
2134
|
+
|
|
2135
|
+
|
|
2115
2136
|
</ul>
|
|
2116
2137
|
</nav>
|
|
2117
2138
|
|
|
@@ -3944,6 +3965,27 @@
|
|
|
3944
3965
|
|
|
3945
3966
|
|
|
3946
3967
|
|
|
3968
|
+
|
|
3969
|
+
|
|
3970
|
+
|
|
3971
|
+
|
|
3972
|
+
|
|
3973
|
+
|
|
3974
|
+
<li class="md-nav__item">
|
|
3975
|
+
<a href="../../../user-guide/core-data-model/dcim/virtualdevicecontext.html" class="md-nav__link">
|
|
3976
|
+
|
|
3977
|
+
|
|
3978
|
+
<span class="md-ellipsis">
|
|
3979
|
+
Virtual Device Context
|
|
3980
|
+
</span>
|
|
3981
|
+
|
|
3982
|
+
|
|
3983
|
+
</a>
|
|
3984
|
+
</li>
|
|
3985
|
+
|
|
3986
|
+
|
|
3987
|
+
|
|
3988
|
+
|
|
3947
3989
|
</ul>
|
|
3948
3990
|
</nav>
|
|
3949
3991
|
|
|
@@ -4556,6 +4598,123 @@
|
|
|
4556
4598
|
|
|
4557
4599
|
|
|
4558
4600
|
|
|
4601
|
+
|
|
4602
|
+
|
|
4603
|
+
|
|
4604
|
+
|
|
4605
|
+
|
|
4606
|
+
|
|
4607
|
+
|
|
4608
|
+
|
|
4609
|
+
|
|
4610
|
+
|
|
4611
|
+
|
|
4612
|
+
|
|
4613
|
+
|
|
4614
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
4615
|
+
|
|
4616
|
+
|
|
4617
|
+
|
|
4618
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_3_9" >
|
|
4619
|
+
|
|
4620
|
+
|
|
4621
|
+
|
|
4622
|
+
<div class="md-nav__link md-nav__container">
|
|
4623
|
+
<a href="../../../user-guide/core-data-model/wireless/index.html" class="md-nav__link ">
|
|
4624
|
+
|
|
4625
|
+
|
|
4626
|
+
<span class="md-ellipsis">
|
|
4627
|
+
Wireless
|
|
4628
|
+
</span>
|
|
4629
|
+
|
|
4630
|
+
|
|
4631
|
+
</a>
|
|
4632
|
+
|
|
4633
|
+
|
|
4634
|
+
<label class="md-nav__link " for="__nav_2_3_9" id="__nav_2_3_9_label" tabindex="0">
|
|
4635
|
+
<span class="md-nav__icon md-icon"></span>
|
|
4636
|
+
</label>
|
|
4637
|
+
|
|
4638
|
+
</div>
|
|
4639
|
+
|
|
4640
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_3_9_label" aria-expanded="false">
|
|
4641
|
+
<label class="md-nav__title" for="__nav_2_3_9">
|
|
4642
|
+
<span class="md-nav__icon md-icon"></span>
|
|
4643
|
+
Wireless
|
|
4644
|
+
</label>
|
|
4645
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
4646
|
+
|
|
4647
|
+
|
|
4648
|
+
|
|
4649
|
+
|
|
4650
|
+
|
|
4651
|
+
|
|
4652
|
+
|
|
4653
|
+
<li class="md-nav__item">
|
|
4654
|
+
<a href="../../../user-guide/core-data-model/wireless/supporteddatarate.html" class="md-nav__link">
|
|
4655
|
+
|
|
4656
|
+
|
|
4657
|
+
<span class="md-ellipsis">
|
|
4658
|
+
Supported Data Rate
|
|
4659
|
+
</span>
|
|
4660
|
+
|
|
4661
|
+
|
|
4662
|
+
</a>
|
|
4663
|
+
</li>
|
|
4664
|
+
|
|
4665
|
+
|
|
4666
|
+
|
|
4667
|
+
|
|
4668
|
+
|
|
4669
|
+
|
|
4670
|
+
|
|
4671
|
+
|
|
4672
|
+
|
|
4673
|
+
|
|
4674
|
+
<li class="md-nav__item">
|
|
4675
|
+
<a href="../../../user-guide/core-data-model/wireless/radioprofile.html" class="md-nav__link">
|
|
4676
|
+
|
|
4677
|
+
|
|
4678
|
+
<span class="md-ellipsis">
|
|
4679
|
+
Radio Profile
|
|
4680
|
+
</span>
|
|
4681
|
+
|
|
4682
|
+
|
|
4683
|
+
</a>
|
|
4684
|
+
</li>
|
|
4685
|
+
|
|
4686
|
+
|
|
4687
|
+
|
|
4688
|
+
|
|
4689
|
+
|
|
4690
|
+
|
|
4691
|
+
|
|
4692
|
+
|
|
4693
|
+
|
|
4694
|
+
|
|
4695
|
+
<li class="md-nav__item">
|
|
4696
|
+
<a href="../../../user-guide/core-data-model/wireless/wirelessnetwork.html" class="md-nav__link">
|
|
4697
|
+
|
|
4698
|
+
|
|
4699
|
+
<span class="md-ellipsis">
|
|
4700
|
+
Wireless Network
|
|
4701
|
+
</span>
|
|
4702
|
+
|
|
4703
|
+
|
|
4704
|
+
</a>
|
|
4705
|
+
</li>
|
|
4706
|
+
|
|
4707
|
+
|
|
4708
|
+
|
|
4709
|
+
|
|
4710
|
+
</ul>
|
|
4711
|
+
</nav>
|
|
4712
|
+
|
|
4713
|
+
</li>
|
|
4714
|
+
|
|
4715
|
+
|
|
4716
|
+
|
|
4717
|
+
|
|
4559
4718
|
</ul>
|
|
4560
4719
|
</nav>
|
|
4561
4720
|
|
|
@@ -4767,6 +4926,27 @@
|
|
|
4767
4926
|
|
|
4768
4927
|
|
|
4769
4928
|
|
|
4929
|
+
<li class="md-nav__item">
|
|
4930
|
+
<a href="../../../user-guide/platform-functionality/events.html" class="md-nav__link">
|
|
4931
|
+
|
|
4932
|
+
|
|
4933
|
+
<span class="md-ellipsis">
|
|
4934
|
+
Event Notifications
|
|
4935
|
+
</span>
|
|
4936
|
+
|
|
4937
|
+
|
|
4938
|
+
</a>
|
|
4939
|
+
</li>
|
|
4940
|
+
|
|
4941
|
+
|
|
4942
|
+
|
|
4943
|
+
|
|
4944
|
+
|
|
4945
|
+
|
|
4946
|
+
|
|
4947
|
+
|
|
4948
|
+
|
|
4949
|
+
|
|
4770
4950
|
<li class="md-nav__item">
|
|
4771
4951
|
<a href="../../../user-guide/platform-functionality/exporttemplate.html" class="md-nav__link">
|
|
4772
4952
|
|
|
@@ -4841,7 +5021,7 @@
|
|
|
4841
5021
|
|
|
4842
5022
|
|
|
4843
5023
|
|
|
4844
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5024
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_10" >
|
|
4845
5025
|
|
|
4846
5026
|
|
|
4847
5027
|
|
|
@@ -4857,14 +5037,14 @@
|
|
|
4857
5037
|
</a>
|
|
4858
5038
|
|
|
4859
5039
|
|
|
4860
|
-
<label class="md-nav__link " for="
|
|
5040
|
+
<label class="md-nav__link " for="__nav_2_4_10" id="__nav_2_4_10_label" tabindex="0">
|
|
4861
5041
|
<span class="md-nav__icon md-icon"></span>
|
|
4862
5042
|
</label>
|
|
4863
5043
|
|
|
4864
5044
|
</div>
|
|
4865
5045
|
|
|
4866
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
4867
|
-
<label class="md-nav__title" for="
|
|
5046
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_10_label" aria-expanded="false">
|
|
5047
|
+
<label class="md-nav__title" for="__nav_2_4_10">
|
|
4868
5048
|
<span class="md-nav__icon md-icon"></span>
|
|
4869
5049
|
GraphQL
|
|
4870
5050
|
</label>
|
|
@@ -4937,7 +5117,7 @@
|
|
|
4937
5117
|
|
|
4938
5118
|
|
|
4939
5119
|
|
|
4940
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5120
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_12" >
|
|
4941
5121
|
|
|
4942
5122
|
|
|
4943
5123
|
|
|
@@ -4953,14 +5133,14 @@
|
|
|
4953
5133
|
</a>
|
|
4954
5134
|
|
|
4955
5135
|
|
|
4956
|
-
<label class="md-nav__link " for="
|
|
5136
|
+
<label class="md-nav__link " for="__nav_2_4_12" id="__nav_2_4_12_label" tabindex="0">
|
|
4957
5137
|
<span class="md-nav__icon md-icon"></span>
|
|
4958
5138
|
</label>
|
|
4959
5139
|
|
|
4960
5140
|
</div>
|
|
4961
5141
|
|
|
4962
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
4963
|
-
<label class="md-nav__title" for="
|
|
5142
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_12_label" aria-expanded="false">
|
|
5143
|
+
<label class="md-nav__title" for="__nav_2_4_12">
|
|
4964
5144
|
<span class="md-nav__icon md-icon"></span>
|
|
4965
5145
|
Jobs
|
|
4966
5146
|
</label>
|
|
@@ -4972,6 +5152,27 @@
|
|
|
4972
5152
|
|
|
4973
5153
|
|
|
4974
5154
|
|
|
5155
|
+
<li class="md-nav__item">
|
|
5156
|
+
<a href="../../../user-guide/platform-functionality/jobs/kubernetes-job-support.html" class="md-nav__link">
|
|
5157
|
+
|
|
5158
|
+
|
|
5159
|
+
<span class="md-ellipsis">
|
|
5160
|
+
Kubernetes Job Support
|
|
5161
|
+
</span>
|
|
5162
|
+
|
|
5163
|
+
|
|
5164
|
+
</a>
|
|
5165
|
+
</li>
|
|
5166
|
+
|
|
5167
|
+
|
|
5168
|
+
|
|
5169
|
+
|
|
5170
|
+
|
|
5171
|
+
|
|
5172
|
+
|
|
5173
|
+
|
|
5174
|
+
|
|
5175
|
+
|
|
4975
5176
|
<li class="md-nav__item">
|
|
4976
5177
|
<a href="../../../user-guide/platform-functionality/jobs/jobbutton.html" class="md-nav__link">
|
|
4977
5178
|
|
|
@@ -5035,6 +5236,27 @@
|
|
|
5035
5236
|
|
|
5036
5237
|
|
|
5037
5238
|
|
|
5239
|
+
<li class="md-nav__item">
|
|
5240
|
+
<a href="../../../user-guide/platform-functionality/jobs/jobqueue.html" class="md-nav__link">
|
|
5241
|
+
|
|
5242
|
+
|
|
5243
|
+
<span class="md-ellipsis">
|
|
5244
|
+
Job Queues
|
|
5245
|
+
</span>
|
|
5246
|
+
|
|
5247
|
+
|
|
5248
|
+
</a>
|
|
5249
|
+
</li>
|
|
5250
|
+
|
|
5251
|
+
|
|
5252
|
+
|
|
5253
|
+
|
|
5254
|
+
|
|
5255
|
+
|
|
5256
|
+
|
|
5257
|
+
|
|
5258
|
+
|
|
5259
|
+
|
|
5038
5260
|
<li class="md-nav__item">
|
|
5039
5261
|
<a href="../../../user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html" class="md-nav__link">
|
|
5040
5262
|
|
|
@@ -5148,6 +5370,27 @@
|
|
|
5148
5370
|
|
|
5149
5371
|
|
|
5150
5372
|
|
|
5373
|
+
<li class="md-nav__item">
|
|
5374
|
+
<a href="../../../user-guide/platform-functionality/rendering-jinja-templates.html" class="md-nav__link">
|
|
5375
|
+
|
|
5376
|
+
|
|
5377
|
+
<span class="md-ellipsis">
|
|
5378
|
+
Rendering Jinja Templates
|
|
5379
|
+
</span>
|
|
5380
|
+
|
|
5381
|
+
|
|
5382
|
+
</a>
|
|
5383
|
+
</li>
|
|
5384
|
+
|
|
5385
|
+
|
|
5386
|
+
|
|
5387
|
+
|
|
5388
|
+
|
|
5389
|
+
|
|
5390
|
+
|
|
5391
|
+
|
|
5392
|
+
|
|
5393
|
+
|
|
5151
5394
|
|
|
5152
5395
|
|
|
5153
5396
|
|
|
@@ -5159,7 +5402,7 @@
|
|
|
5159
5402
|
|
|
5160
5403
|
|
|
5161
5404
|
|
|
5162
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5405
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_18" >
|
|
5163
5406
|
|
|
5164
5407
|
|
|
5165
5408
|
|
|
@@ -5175,14 +5418,14 @@
|
|
|
5175
5418
|
</a>
|
|
5176
5419
|
|
|
5177
5420
|
|
|
5178
|
-
<label class="md-nav__link " for="
|
|
5421
|
+
<label class="md-nav__link " for="__nav_2_4_18" id="__nav_2_4_18_label" tabindex="0">
|
|
5179
5422
|
<span class="md-nav__icon md-icon"></span>
|
|
5180
5423
|
</label>
|
|
5181
5424
|
|
|
5182
5425
|
</div>
|
|
5183
5426
|
|
|
5184
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
5185
|
-
<label class="md-nav__title" for="
|
|
5427
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_18_label" aria-expanded="false">
|
|
5428
|
+
<label class="md-nav__title" for="__nav_2_4_18">
|
|
5186
5429
|
<span class="md-nav__icon md-icon"></span>
|
|
5187
5430
|
REST API
|
|
5188
5431
|
</label>
|
|
@@ -5402,10 +5645,10 @@
|
|
|
5402
5645
|
|
|
5403
5646
|
|
|
5404
5647
|
|
|
5405
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
5648
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_25" >
|
|
5406
5649
|
|
|
5407
5650
|
|
|
5408
|
-
<label class="md-nav__link" for="
|
|
5651
|
+
<label class="md-nav__link" for="__nav_2_4_25" id="__nav_2_4_25_label" tabindex="0">
|
|
5409
5652
|
|
|
5410
5653
|
|
|
5411
5654
|
<span class="md-ellipsis">
|
|
@@ -5416,8 +5659,8 @@
|
|
|
5416
5659
|
<span class="md-nav__icon md-icon"></span>
|
|
5417
5660
|
</label>
|
|
5418
5661
|
|
|
5419
|
-
<nav class="md-nav" data-md-level="3" aria-labelledby="
|
|
5420
|
-
<label class="md-nav__title" for="
|
|
5662
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_25_label" aria-expanded="false">
|
|
5663
|
+
<label class="md-nav__title" for="__nav_2_4_25">
|
|
5421
5664
|
<span class="md-nav__icon md-icon"></span>
|
|
5422
5665
|
Users
|
|
5423
5666
|
</label>
|
|
@@ -6831,6 +7074,27 @@
|
|
|
6831
7074
|
|
|
6832
7075
|
|
|
6833
7076
|
|
|
7077
|
+
<li class="md-nav__item">
|
|
7078
|
+
<a href="events.html" class="md-nav__link">
|
|
7079
|
+
|
|
7080
|
+
|
|
7081
|
+
<span class="md-ellipsis">
|
|
7082
|
+
nautobot.apps.events
|
|
7083
|
+
</span>
|
|
7084
|
+
|
|
7085
|
+
|
|
7086
|
+
</a>
|
|
7087
|
+
</li>
|
|
7088
|
+
|
|
7089
|
+
|
|
7090
|
+
|
|
7091
|
+
|
|
7092
|
+
|
|
7093
|
+
|
|
7094
|
+
|
|
7095
|
+
|
|
7096
|
+
|
|
7097
|
+
|
|
6834
7098
|
<li class="md-nav__item">
|
|
6835
7099
|
<a href="exceptions.html" class="md-nav__link">
|
|
6836
7100
|
|
|
@@ -6989,6 +7253,21 @@
|
|
|
6989
7253
|
</span>
|
|
6990
7254
|
</a>
|
|
6991
7255
|
|
|
7256
|
+
<nav class="md-nav" aria-label="BulkEditForm">
|
|
7257
|
+
<ul class="md-nav__list">
|
|
7258
|
+
|
|
7259
|
+
<li class="md-nav__item">
|
|
7260
|
+
<a href="#nautobot.apps.forms.BulkEditForm.post_save" class="md-nav__link">
|
|
7261
|
+
<span class="md-ellipsis">
|
|
7262
|
+
post_save
|
|
7263
|
+
</span>
|
|
7264
|
+
</a>
|
|
7265
|
+
|
|
7266
|
+
</li>
|
|
7267
|
+
|
|
7268
|
+
</ul>
|
|
7269
|
+
</nav>
|
|
7270
|
+
|
|
6992
7271
|
</li>
|
|
6993
7272
|
|
|
6994
7273
|
<li class="md-nav__item">
|
|
@@ -7386,6 +7665,15 @@
|
|
|
7386
7665
|
</span>
|
|
7387
7666
|
</a>
|
|
7388
7667
|
|
|
7668
|
+
</li>
|
|
7669
|
+
|
|
7670
|
+
<li class="md-nav__item">
|
|
7671
|
+
<a href="#nautobot.apps.forms.JSONArrayFormField.valid_value" class="md-nav__link">
|
|
7672
|
+
<span class="md-ellipsis">
|
|
7673
|
+
valid_value
|
|
7674
|
+
</span>
|
|
7675
|
+
</a>
|
|
7676
|
+
|
|
7389
7677
|
</li>
|
|
7390
7678
|
|
|
7391
7679
|
<li class="md-nav__item">
|
|
@@ -8283,6 +8571,123 @@
|
|
|
8283
8571
|
|
|
8284
8572
|
|
|
8285
8573
|
|
|
8574
|
+
|
|
8575
|
+
|
|
8576
|
+
|
|
8577
|
+
|
|
8578
|
+
|
|
8579
|
+
|
|
8580
|
+
|
|
8581
|
+
|
|
8582
|
+
|
|
8583
|
+
|
|
8584
|
+
|
|
8585
|
+
|
|
8586
|
+
|
|
8587
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
8588
|
+
|
|
8589
|
+
|
|
8590
|
+
|
|
8591
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_2_9_5" >
|
|
8592
|
+
|
|
8593
|
+
|
|
8594
|
+
|
|
8595
|
+
<div class="md-nav__link md-nav__container">
|
|
8596
|
+
<a href="../../../development/apps/migration/ui-component-framework/index.html" class="md-nav__link ">
|
|
8597
|
+
|
|
8598
|
+
|
|
8599
|
+
<span class="md-ellipsis">
|
|
8600
|
+
UI Component Framework
|
|
8601
|
+
</span>
|
|
8602
|
+
|
|
8603
|
+
|
|
8604
|
+
</a>
|
|
8605
|
+
|
|
8606
|
+
|
|
8607
|
+
<label class="md-nav__link " for="__nav_3_2_9_5" id="__nav_3_2_9_5_label" tabindex="0">
|
|
8608
|
+
<span class="md-nav__icon md-icon"></span>
|
|
8609
|
+
</label>
|
|
8610
|
+
|
|
8611
|
+
</div>
|
|
8612
|
+
|
|
8613
|
+
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_3_2_9_5_label" aria-expanded="false">
|
|
8614
|
+
<label class="md-nav__title" for="__nav_3_2_9_5">
|
|
8615
|
+
<span class="md-nav__icon md-icon"></span>
|
|
8616
|
+
UI Component Framework
|
|
8617
|
+
</label>
|
|
8618
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
8619
|
+
|
|
8620
|
+
|
|
8621
|
+
|
|
8622
|
+
|
|
8623
|
+
|
|
8624
|
+
|
|
8625
|
+
|
|
8626
|
+
<li class="md-nav__item">
|
|
8627
|
+
<a href="../../../development/apps/migration/ui-component-framework/migration-steps.html" class="md-nav__link">
|
|
8628
|
+
|
|
8629
|
+
|
|
8630
|
+
<span class="md-ellipsis">
|
|
8631
|
+
Migration steps
|
|
8632
|
+
</span>
|
|
8633
|
+
|
|
8634
|
+
|
|
8635
|
+
</a>
|
|
8636
|
+
</li>
|
|
8637
|
+
|
|
8638
|
+
|
|
8639
|
+
|
|
8640
|
+
|
|
8641
|
+
|
|
8642
|
+
|
|
8643
|
+
|
|
8644
|
+
|
|
8645
|
+
|
|
8646
|
+
|
|
8647
|
+
<li class="md-nav__item">
|
|
8648
|
+
<a href="../../../development/apps/migration/ui-component-framework/custom-content.html" class="md-nav__link">
|
|
8649
|
+
|
|
8650
|
+
|
|
8651
|
+
<span class="md-ellipsis">
|
|
8652
|
+
Custom content
|
|
8653
|
+
</span>
|
|
8654
|
+
|
|
8655
|
+
|
|
8656
|
+
</a>
|
|
8657
|
+
</li>
|
|
8658
|
+
|
|
8659
|
+
|
|
8660
|
+
|
|
8661
|
+
|
|
8662
|
+
|
|
8663
|
+
|
|
8664
|
+
|
|
8665
|
+
|
|
8666
|
+
|
|
8667
|
+
|
|
8668
|
+
<li class="md-nav__item">
|
|
8669
|
+
<a href="../../../development/apps/migration/ui-component-framework/best-practices.html" class="md-nav__link">
|
|
8670
|
+
|
|
8671
|
+
|
|
8672
|
+
<span class="md-ellipsis">
|
|
8673
|
+
Best practices
|
|
8674
|
+
</span>
|
|
8675
|
+
|
|
8676
|
+
|
|
8677
|
+
</a>
|
|
8678
|
+
</li>
|
|
8679
|
+
|
|
8680
|
+
|
|
8681
|
+
|
|
8682
|
+
|
|
8683
|
+
</ul>
|
|
8684
|
+
</nav>
|
|
8685
|
+
|
|
8686
|
+
</li>
|
|
8687
|
+
|
|
8688
|
+
|
|
8689
|
+
|
|
8690
|
+
|
|
8286
8691
|
</ul>
|
|
8287
8692
|
</nav>
|
|
8288
8693
|
|
|
@@ -8628,6 +9033,27 @@
|
|
|
8628
9033
|
|
|
8629
9034
|
|
|
8630
9035
|
|
|
9036
|
+
<li class="md-nav__item">
|
|
9037
|
+
<a href="../../../development/core/minikube-dev-environment-for-k8s-jobs.html" class="md-nav__link">
|
|
9038
|
+
|
|
9039
|
+
|
|
9040
|
+
<span class="md-ellipsis">
|
|
9041
|
+
Minikube Dev Environment for K8s Jobs
|
|
9042
|
+
</span>
|
|
9043
|
+
|
|
9044
|
+
|
|
9045
|
+
</a>
|
|
9046
|
+
</li>
|
|
9047
|
+
|
|
9048
|
+
|
|
9049
|
+
|
|
9050
|
+
|
|
9051
|
+
|
|
9052
|
+
|
|
9053
|
+
|
|
9054
|
+
|
|
9055
|
+
|
|
9056
|
+
|
|
8631
9057
|
<li class="md-nav__item">
|
|
8632
9058
|
<a href="../../../development/core/model-checklist.html" class="md-nav__link">
|
|
8633
9059
|
|
|
@@ -8817,6 +9243,27 @@
|
|
|
8817
9243
|
|
|
8818
9244
|
|
|
8819
9245
|
|
|
9246
|
+
<li class="md-nav__item">
|
|
9247
|
+
<a href="../../../development/core/ui-component-framework.html" class="md-nav__link">
|
|
9248
|
+
|
|
9249
|
+
|
|
9250
|
+
<span class="md-ellipsis">
|
|
9251
|
+
UI Component Framework
|
|
9252
|
+
</span>
|
|
9253
|
+
|
|
9254
|
+
|
|
9255
|
+
</a>
|
|
9256
|
+
</li>
|
|
9257
|
+
|
|
9258
|
+
|
|
9259
|
+
|
|
9260
|
+
|
|
9261
|
+
|
|
9262
|
+
|
|
9263
|
+
|
|
9264
|
+
|
|
9265
|
+
|
|
9266
|
+
|
|
8820
9267
|
<li class="md-nav__item">
|
|
8821
9268
|
<a href="../../../development/core/release-checklist.html" class="md-nav__link">
|
|
8822
9269
|
|
|
@@ -8899,6 +9346,27 @@
|
|
|
8899
9346
|
|
|
8900
9347
|
|
|
8901
9348
|
|
|
9349
|
+
<li class="md-nav__item">
|
|
9350
|
+
<a href="../../../release-notes/version-2.4.html" class="md-nav__link">
|
|
9351
|
+
|
|
9352
|
+
|
|
9353
|
+
<span class="md-ellipsis">
|
|
9354
|
+
Version 2.4
|
|
9355
|
+
</span>
|
|
9356
|
+
|
|
9357
|
+
|
|
9358
|
+
</a>
|
|
9359
|
+
</li>
|
|
9360
|
+
|
|
9361
|
+
|
|
9362
|
+
|
|
9363
|
+
|
|
9364
|
+
|
|
9365
|
+
|
|
9366
|
+
|
|
9367
|
+
|
|
9368
|
+
|
|
9369
|
+
|
|
8902
9370
|
<li class="md-nav__item">
|
|
8903
9371
|
<a href="../../../release-notes/version-2.3.html" class="md-nav__link">
|
|
8904
9372
|
|
|
@@ -9535,6 +10003,21 @@
|
|
|
9535
10003
|
</span>
|
|
9536
10004
|
</a>
|
|
9537
10005
|
|
|
10006
|
+
<nav class="md-nav" aria-label="BulkEditForm">
|
|
10007
|
+
<ul class="md-nav__list">
|
|
10008
|
+
|
|
10009
|
+
<li class="md-nav__item">
|
|
10010
|
+
<a href="#nautobot.apps.forms.BulkEditForm.post_save" class="md-nav__link">
|
|
10011
|
+
<span class="md-ellipsis">
|
|
10012
|
+
post_save
|
|
10013
|
+
</span>
|
|
10014
|
+
</a>
|
|
10015
|
+
|
|
10016
|
+
</li>
|
|
10017
|
+
|
|
10018
|
+
</ul>
|
|
10019
|
+
</nav>
|
|
10020
|
+
|
|
9538
10021
|
</li>
|
|
9539
10022
|
|
|
9540
10023
|
<li class="md-nav__item">
|
|
@@ -9932,6 +10415,15 @@
|
|
|
9932
10415
|
</span>
|
|
9933
10416
|
</a>
|
|
9934
10417
|
|
|
10418
|
+
</li>
|
|
10419
|
+
|
|
10420
|
+
<li class="md-nav__item">
|
|
10421
|
+
<a href="#nautobot.apps.forms.JSONArrayFormField.valid_value" class="md-nav__link">
|
|
10422
|
+
<span class="md-ellipsis">
|
|
10423
|
+
valid_value
|
|
10424
|
+
</span>
|
|
10425
|
+
</a>
|
|
10426
|
+
|
|
9935
10427
|
</li>
|
|
9936
10428
|
|
|
9937
10429
|
<li class="md-nav__item">
|
|
@@ -10380,7 +10872,12 @@
|
|
|
10380
10872
|
|
|
10381
10873
|
<div class="doc doc-contents first">
|
|
10382
10874
|
|
|
10383
|
-
|
|
10875
|
+
<p>Forms and fields for apps to use.</p>
|
|
10876
|
+
|
|
10877
|
+
|
|
10878
|
+
|
|
10879
|
+
|
|
10880
|
+
|
|
10384
10881
|
|
|
10385
10882
|
|
|
10386
10883
|
|
|
@@ -10406,10 +10903,10 @@
|
|
|
10406
10903
|
|
|
10407
10904
|
<div class="doc doc-contents ">
|
|
10408
10905
|
<p class="doc doc-class-bases">
|
|
10409
|
-
Bases: <code><
|
|
10906
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.widgets.SelectWithDisabled" href="#nautobot.apps.forms.SelectWithDisabled">SelectWithDisabled</a></code></p>
|
|
10410
10907
|
|
|
10411
10908
|
|
|
10412
|
-
|
|
10909
|
+
<p>A select widget populated via an API call</p>
|
|
10413
10910
|
|
|
10414
10911
|
|
|
10415
10912
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -10424,9 +10921,11 @@
|
|
|
10424
10921
|
</thead>
|
|
10425
10922
|
<tbody>
|
|
10426
10923
|
<tr class="doc-section-item">
|
|
10427
|
-
<td><code>api_url</code></td>
|
|
10428
10924
|
<td>
|
|
10429
|
-
|
|
10925
|
+
<code>api_url</code>
|
|
10926
|
+
</td>
|
|
10927
|
+
<td>
|
|
10928
|
+
<code>str</code>
|
|
10430
10929
|
</td>
|
|
10431
10930
|
<td>
|
|
10432
10931
|
<div class="doc-md-description">
|
|
@@ -10438,9 +10937,11 @@
|
|
|
10438
10937
|
</td>
|
|
10439
10938
|
</tr>
|
|
10440
10939
|
<tr class="doc-section-item">
|
|
10441
|
-
<td><code>api_version</code></td>
|
|
10442
10940
|
<td>
|
|
10443
|
-
|
|
10941
|
+
<code>api_version</code>
|
|
10942
|
+
</td>
|
|
10943
|
+
<td>
|
|
10944
|
+
<code>str</code>
|
|
10444
10945
|
</td>
|
|
10445
10946
|
<td>
|
|
10446
10947
|
<div class="doc-md-description">
|
|
@@ -10457,6 +10958,11 @@
|
|
|
10457
10958
|
|
|
10458
10959
|
|
|
10459
10960
|
|
|
10961
|
+
|
|
10962
|
+
|
|
10963
|
+
|
|
10964
|
+
|
|
10965
|
+
|
|
10460
10966
|
<div class="doc doc-children">
|
|
10461
10967
|
|
|
10462
10968
|
|
|
@@ -10478,7 +10984,7 @@
|
|
|
10478
10984
|
|
|
10479
10985
|
<div class="doc doc-contents ">
|
|
10480
10986
|
|
|
10481
|
-
|
|
10987
|
+
<p>Add details for an additional query param in the form of a data-* JSON-encoded list attribute.</p>
|
|
10482
10988
|
<p>:param name: The name of the query param
|
|
10483
10989
|
:param value: The value of the query param</p>
|
|
10484
10990
|
|
|
@@ -10507,10 +11013,15 @@
|
|
|
10507
11013
|
|
|
10508
11014
|
<div class="doc doc-contents ">
|
|
10509
11015
|
<p class="doc doc-class-bases">
|
|
10510
|
-
Bases: <code><
|
|
11016
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
11017
|
+
|
|
11018
|
+
|
|
11019
|
+
<p>ModelForm mixin for IPAddress based models.</p>
|
|
11020
|
+
|
|
11021
|
+
|
|
11022
|
+
|
|
10511
11023
|
|
|
10512
11024
|
|
|
10513
|
-
<p>ModelForm mixin for IPAddress based models.</p>
|
|
10514
11025
|
|
|
10515
11026
|
|
|
10516
11027
|
|
|
@@ -10546,10 +11057,10 @@
|
|
|
10546
11057
|
|
|
10547
11058
|
<div class="doc doc-contents ">
|
|
10548
11059
|
<p class="doc doc-class-bases">
|
|
10549
|
-
Bases: <code><
|
|
11060
|
+
Bases: <code><span title="django.forms.BaseForm">BaseForm</span></code></p>
|
|
10550
11061
|
|
|
10551
11062
|
|
|
10552
|
-
|
|
11063
|
+
<p>Add the base Bootstrap CSS classes to form elements.</p>
|
|
10553
11064
|
<p>Note that this only applies to form fields that are:</p>
|
|
10554
11065
|
<ol>
|
|
10555
11066
|
<li>statically defined on the form class at declaration time, or</li>
|
|
@@ -10560,6 +11071,11 @@
|
|
|
10560
11071
|
|
|
10561
11072
|
|
|
10562
11073
|
|
|
11074
|
+
|
|
11075
|
+
|
|
11076
|
+
|
|
11077
|
+
|
|
11078
|
+
|
|
10563
11079
|
<div class="doc doc-children">
|
|
10564
11080
|
|
|
10565
11081
|
|
|
@@ -10591,16 +11107,21 @@
|
|
|
10591
11107
|
|
|
10592
11108
|
<div class="doc doc-contents ">
|
|
10593
11109
|
<p class="doc doc-class-bases">
|
|
10594
|
-
Bases: <code><
|
|
11110
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
10595
11111
|
|
|
10596
11112
|
|
|
10597
|
-
|
|
11113
|
+
<p>Base form for editing multiple objects in bulk.</p>
|
|
10598
11114
|
<p>Note that for models supporting custom fields and relationships, nautobot.extras.forms.NautobotBulkEditForm is
|
|
10599
11115
|
a more powerful subclass and should be used instead of directly inheriting from this class.</p>
|
|
10600
11116
|
|
|
10601
11117
|
|
|
10602
11118
|
|
|
10603
11119
|
|
|
11120
|
+
|
|
11121
|
+
|
|
11122
|
+
|
|
11123
|
+
|
|
11124
|
+
|
|
10604
11125
|
<div class="doc doc-children">
|
|
10605
11126
|
|
|
10606
11127
|
|
|
@@ -10611,6 +11132,23 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10611
11132
|
|
|
10612
11133
|
|
|
10613
11134
|
|
|
11135
|
+
<div class="doc doc-object doc-function">
|
|
11136
|
+
|
|
11137
|
+
|
|
11138
|
+
<h3 id="nautobot.apps.forms.BulkEditForm.post_save" class="doc doc-heading">
|
|
11139
|
+
<code class="highlight language-python"><span class="n">post_save</span><span class="p">(</span><span class="n">obj</span><span class="p">)</span></code>
|
|
11140
|
+
|
|
11141
|
+
<a href="#nautobot.apps.forms.BulkEditForm.post_save" class="headerlink" title="Permanent link">¶</a></h3>
|
|
11142
|
+
|
|
11143
|
+
|
|
11144
|
+
<div class="doc doc-contents ">
|
|
11145
|
+
|
|
11146
|
+
<p>Post save action</p>
|
|
11147
|
+
|
|
11148
|
+
</div>
|
|
11149
|
+
|
|
11150
|
+
</div>
|
|
11151
|
+
|
|
10614
11152
|
|
|
10615
11153
|
|
|
10616
11154
|
</div>
|
|
@@ -10632,10 +11170,15 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10632
11170
|
|
|
10633
11171
|
<div class="doc doc-contents ">
|
|
10634
11172
|
<p class="doc doc-class-bases">
|
|
10635
|
-
Bases: <code><
|
|
11173
|
+
Bases: <code><span title="django.forms.NullBooleanSelect">NullBooleanSelect</span></code></p>
|
|
11174
|
+
|
|
11175
|
+
|
|
11176
|
+
<p>A Select widget for NullBooleanFields</p>
|
|
11177
|
+
|
|
11178
|
+
|
|
11179
|
+
|
|
10636
11180
|
|
|
10637
11181
|
|
|
10638
|
-
<p>A Select widget for NullBooleanFields</p>
|
|
10639
11182
|
|
|
10640
11183
|
|
|
10641
11184
|
|
|
@@ -10671,10 +11214,15 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10671
11214
|
|
|
10672
11215
|
<div class="doc doc-contents ">
|
|
10673
11216
|
<p class="doc doc-class-bases">
|
|
10674
|
-
Bases: <code><
|
|
11217
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
11218
|
+
|
|
11219
|
+
|
|
11220
|
+
<p>An extendable form to be used for renaming objects in bulk.</p>
|
|
11221
|
+
|
|
11222
|
+
|
|
11223
|
+
|
|
10675
11224
|
|
|
10676
11225
|
|
|
10677
|
-
<p>An extendable form to be used for renaming objects in bulk.</p>
|
|
10678
11226
|
|
|
10679
11227
|
|
|
10680
11228
|
|
|
@@ -10710,15 +11258,20 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10710
11258
|
|
|
10711
11259
|
<div class="doc doc-contents ">
|
|
10712
11260
|
<p class="doc doc-class-bases">
|
|
10713
|
-
Bases: <code><
|
|
11261
|
+
Bases: <code><span title="django.forms.ChoiceField">ChoiceField</span></code></p>
|
|
10714
11262
|
|
|
10715
11263
|
|
|
10716
|
-
|
|
11264
|
+
<p>Invert the provided set of choices to take the human-friendly label as input, and return the database value.</p>
|
|
10717
11265
|
<p>Despite the name, this is no longer used in CSV imports since 2.0, but <em>is</em> used in JSON/YAML import of DeviceTypes.</p>
|
|
10718
11266
|
|
|
10719
11267
|
|
|
10720
11268
|
|
|
10721
11269
|
|
|
11270
|
+
|
|
11271
|
+
|
|
11272
|
+
|
|
11273
|
+
|
|
11274
|
+
|
|
10722
11275
|
<div class="doc doc-children">
|
|
10723
11276
|
|
|
10724
11277
|
|
|
@@ -10750,15 +11303,20 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10750
11303
|
|
|
10751
11304
|
<div class="doc doc-contents ">
|
|
10752
11305
|
<p class="doc doc-class-bases">
|
|
10753
|
-
Bases: <code><
|
|
11306
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.CSVModelChoiceField" href="#nautobot.apps.forms.CSVModelChoiceField">CSVModelChoiceField</a></code></p>
|
|
10754
11307
|
|
|
10755
11308
|
|
|
10756
|
-
|
|
11309
|
+
<p>Reference a ContentType in the form <code>{app_label}.{model}</code>.</p>
|
|
10757
11310
|
<p>Note: class name is misleading; this field is also used in numerous FilterSets where it has nothing to do with CSV.</p>
|
|
10758
11311
|
|
|
10759
11312
|
|
|
10760
11313
|
|
|
10761
11314
|
|
|
11315
|
+
|
|
11316
|
+
|
|
11317
|
+
|
|
11318
|
+
|
|
11319
|
+
|
|
10762
11320
|
<div class="doc doc-children">
|
|
10763
11321
|
|
|
10764
11322
|
|
|
@@ -10780,7 +11338,7 @@ a more powerful subclass and should be used instead of directly inheriting from
|
|
|
10780
11338
|
|
|
10781
11339
|
<div class="doc doc-contents ">
|
|
10782
11340
|
|
|
10783
|
-
|
|
11341
|
+
<p>Allow this field to support <code>{app_label}.{model}</code> style, null values, or PK-based lookups
|
|
10784
11342
|
depending on how the field is used.</p>
|
|
10785
11343
|
|
|
10786
11344
|
</div>
|
|
@@ -10808,10 +11366,10 @@ depending on how the field is used.</p>
|
|
|
10808
11366
|
|
|
10809
11367
|
<div class="doc doc-contents ">
|
|
10810
11368
|
<p class="doc doc-class-bases">
|
|
10811
|
-
Bases: <code><
|
|
11369
|
+
Bases: <code><span title="django.forms.CharField">CharField</span></code></p>
|
|
10812
11370
|
|
|
10813
11371
|
|
|
10814
|
-
|
|
11372
|
+
<p>A CharField (rendered as a Textarea) which expects CSV-formatted data.</p>
|
|
10815
11373
|
<p>Initial value is a list of headers corresponding to the required fields for the given serializer class.</p>
|
|
10816
11374
|
<p>This no longer actually does any CSV parsing or validation on its own,
|
|
10817
11375
|
as that is now handled by the NautobotCSVParser class and the REST API serializers.</p>
|
|
@@ -10829,9 +11387,11 @@ as that is now handled by the NautobotCSVParser class and the REST API serialize
|
|
|
10829
11387
|
</thead>
|
|
10830
11388
|
<tbody>
|
|
10831
11389
|
<tr class="doc-section-item">
|
|
10832
|
-
<td><code>required_field_names</code></td>
|
|
10833
11390
|
<td>
|
|
10834
|
-
|
|
11391
|
+
<code>required_field_names</code>
|
|
11392
|
+
</td>
|
|
11393
|
+
<td>
|
|
11394
|
+
<code>list[str]</code>
|
|
10835
11395
|
</td>
|
|
10836
11396
|
<td>
|
|
10837
11397
|
<div class="doc-md-description">
|
|
@@ -10848,6 +11408,11 @@ as that is now handled by the NautobotCSVParser class and the REST API serialize
|
|
|
10848
11408
|
|
|
10849
11409
|
|
|
10850
11410
|
|
|
11411
|
+
|
|
11412
|
+
|
|
11413
|
+
|
|
11414
|
+
|
|
11415
|
+
|
|
10851
11416
|
<div class="doc doc-children">
|
|
10852
11417
|
|
|
10853
11418
|
|
|
@@ -10879,16 +11444,21 @@ as that is now handled by the NautobotCSVParser class and the REST API serialize
|
|
|
10879
11444
|
|
|
10880
11445
|
<div class="doc doc-contents ">
|
|
10881
11446
|
<p class="doc doc-class-bases">
|
|
10882
|
-
Bases: <code><
|
|
11447
|
+
Bases: <code><span title="django.forms.FileField">FileField</span></code></p>
|
|
10883
11448
|
|
|
10884
11449
|
|
|
10885
|
-
|
|
11450
|
+
<p>A FileField (rendered as a ClearableFileInput) which expects a file containing CSV-formatted data.</p>
|
|
10886
11451
|
<p>This no longer actually does any CSV parsing or validation on its own,
|
|
10887
11452
|
as that is now handled by the NautobotCSVParser class and the REST API serializers.</p>
|
|
10888
11453
|
|
|
10889
11454
|
|
|
10890
11455
|
|
|
10891
11456
|
|
|
11457
|
+
|
|
11458
|
+
|
|
11459
|
+
|
|
11460
|
+
|
|
11461
|
+
|
|
10892
11462
|
<div class="doc doc-children">
|
|
10893
11463
|
|
|
10894
11464
|
|
|
@@ -10903,14 +11473,14 @@ as that is now handled by the NautobotCSVParser class and the REST API serialize
|
|
|
10903
11473
|
|
|
10904
11474
|
|
|
10905
11475
|
<h3 id="nautobot.apps.forms.CSVFileField.to_python" class="doc doc-heading">
|
|
10906
|
-
<code class="highlight language-python"><span class="n">to_python</span><span class="p">(</span><span class="n">
|
|
11476
|
+
<code class="highlight language-python"><span class="n">to_python</span><span class="p">(</span><span class="n">data</span><span class="p">)</span></code>
|
|
10907
11477
|
|
|
10908
11478
|
<a href="#nautobot.apps.forms.CSVFileField.to_python" class="headerlink" title="Permanent link">¶</a></h3>
|
|
10909
11479
|
|
|
10910
11480
|
|
|
10911
11481
|
<div class="doc doc-contents ">
|
|
10912
11482
|
|
|
10913
|
-
|
|
11483
|
+
<p>For parity with CSVDataField, this returns the CSV text rather than an UploadedFile object.</p>
|
|
10914
11484
|
|
|
10915
11485
|
</div>
|
|
10916
11486
|
|
|
@@ -10937,17 +11507,22 @@ as that is now handled by the NautobotCSVParser class and the REST API serialize
|
|
|
10937
11507
|
|
|
10938
11508
|
<div class="doc doc-contents ">
|
|
10939
11509
|
<p class="doc doc-class-bases">
|
|
10940
|
-
Bases: <code><
|
|
11510
|
+
Bases: <code><span title="django.forms.ModelChoiceField">ModelChoiceField</span></code></p>
|
|
10941
11511
|
|
|
10942
11512
|
|
|
10943
|
-
|
|
11513
|
+
<p>Provides additional validation for model choices entered as CSV data.</p>
|
|
10944
11514
|
<p>Note: class name is misleading; the subclass CSVContentTypeField (below) is also used in FilterSets, where it has
|
|
10945
11515
|
nothing to do with CSV data.</p>
|
|
10946
11516
|
|
|
10947
11517
|
|
|
10948
11518
|
|
|
10949
11519
|
|
|
10950
|
-
|
|
11520
|
+
|
|
11521
|
+
|
|
11522
|
+
|
|
11523
|
+
|
|
11524
|
+
|
|
11525
|
+
<div class="doc doc-children">
|
|
10951
11526
|
|
|
10952
11527
|
|
|
10953
11528
|
|
|
@@ -10978,16 +11553,21 @@ nothing to do with CSV data.</p>
|
|
|
10978
11553
|
|
|
10979
11554
|
<div class="doc doc-contents ">
|
|
10980
11555
|
<p class="doc doc-class-bases">
|
|
10981
|
-
Bases: <code><
|
|
11556
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
10982
11557
|
|
|
10983
11558
|
|
|
10984
|
-
|
|
11559
|
+
<p>ModelForm used for the import of objects.</p>
|
|
10985
11560
|
<p>Note: the name is misleading as since 2.0 this is no longer used for CSV imports; however it <em>is</em> still used for
|
|
10986
11561
|
JSON/YAML imports of DeviceTypes and their component templates.</p>
|
|
10987
11562
|
|
|
10988
11563
|
|
|
10989
11564
|
|
|
10990
11565
|
|
|
11566
|
+
|
|
11567
|
+
|
|
11568
|
+
|
|
11569
|
+
|
|
11570
|
+
|
|
10991
11571
|
<div class="doc doc-children">
|
|
10992
11572
|
|
|
10993
11573
|
|
|
@@ -11019,16 +11599,21 @@ JSON/YAML imports of DeviceTypes and their component templates.</p>
|
|
|
11019
11599
|
|
|
11020
11600
|
<div class="doc doc-contents ">
|
|
11021
11601
|
<p class="doc doc-class-bases">
|
|
11022
|
-
Bases: <code><
|
|
11602
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.CSVChoiceField" href="#nautobot.apps.forms.CSVChoiceField">CSVChoiceField</a></code></p>
|
|
11023
11603
|
|
|
11024
11604
|
|
|
11025
|
-
|
|
11605
|
+
<p>A version of CSVChoiceField that supports and emits a list of choice values.</p>
|
|
11026
11606
|
<p>As with CSVChoiceField, the name is misleading, as this is no longer used for CSV imports, but is used for
|
|
11027
11607
|
JSON/YAML import of DeviceTypes still.</p>
|
|
11028
11608
|
|
|
11029
11609
|
|
|
11030
11610
|
|
|
11031
11611
|
|
|
11612
|
+
|
|
11613
|
+
|
|
11614
|
+
|
|
11615
|
+
|
|
11616
|
+
|
|
11032
11617
|
<div class="doc doc-children">
|
|
11033
11618
|
|
|
11034
11619
|
|
|
@@ -11050,7 +11635,7 @@ JSON/YAML import of DeviceTypes still.</p>
|
|
|
11050
11635
|
|
|
11051
11636
|
<div class="doc doc-contents ">
|
|
11052
11637
|
|
|
11053
|
-
|
|
11638
|
+
<p>Return a list of strings.</p>
|
|
11054
11639
|
|
|
11055
11640
|
</div>
|
|
11056
11641
|
|
|
@@ -11067,7 +11652,7 @@ JSON/YAML import of DeviceTypes still.</p>
|
|
|
11067
11652
|
|
|
11068
11653
|
<div class="doc doc-contents ">
|
|
11069
11654
|
|
|
11070
|
-
|
|
11655
|
+
<p>Validate that each of the input values is in self.choices.</p>
|
|
11071
11656
|
|
|
11072
11657
|
</div>
|
|
11073
11658
|
|
|
@@ -11094,16 +11679,21 @@ JSON/YAML import of DeviceTypes still.</p>
|
|
|
11094
11679
|
|
|
11095
11680
|
<div class="doc doc-contents ">
|
|
11096
11681
|
<p class="doc doc-class-bases">
|
|
11097
|
-
Bases: <code><
|
|
11682
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.MultipleContentTypeField" href="#nautobot.apps.forms.MultipleContentTypeField">MultipleContentTypeField</a></code></p>
|
|
11098
11683
|
|
|
11099
11684
|
|
|
11100
|
-
|
|
11685
|
+
<p>Reference a list of <code>ContentType</code> objects in the form `{app_label}.{model}'.</p>
|
|
11101
11686
|
<p>Note: This is unused in Nautobot core at this time, but some apps (data-validation-engine) use this for non-CSV
|
|
11102
11687
|
purposes, similar to CSVContentTypeField above.</p>
|
|
11103
11688
|
|
|
11104
11689
|
|
|
11105
11690
|
|
|
11106
11691
|
|
|
11692
|
+
|
|
11693
|
+
|
|
11694
|
+
|
|
11695
|
+
|
|
11696
|
+
|
|
11107
11697
|
<div class="doc doc-children">
|
|
11108
11698
|
|
|
11109
11699
|
|
|
@@ -11125,7 +11715,7 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11125
11715
|
|
|
11126
11716
|
<div class="doc doc-contents ">
|
|
11127
11717
|
|
|
11128
|
-
|
|
11718
|
+
<p>Parse a comma-separated string of model names into a list of PKs.</p>
|
|
11129
11719
|
|
|
11130
11720
|
</div>
|
|
11131
11721
|
|
|
@@ -11152,10 +11742,15 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11152
11742
|
|
|
11153
11743
|
<div class="doc doc-contents ">
|
|
11154
11744
|
<p class="doc doc-class-bases">
|
|
11155
|
-
Bases: <code><
|
|
11745
|
+
Bases: <code><span title="django.forms.Select">Select</span></code></p>
|
|
11746
|
+
|
|
11747
|
+
|
|
11748
|
+
<p>Extends the built-in Select widget to colorize each <option>.</p>
|
|
11749
|
+
|
|
11750
|
+
|
|
11751
|
+
|
|
11156
11752
|
|
|
11157
11753
|
|
|
11158
|
-
<p>Extends the built-in Select widget to colorize each <option>.</p>
|
|
11159
11754
|
|
|
11160
11755
|
|
|
11161
11756
|
|
|
@@ -11191,10 +11786,15 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11191
11786
|
|
|
11192
11787
|
<div class="doc doc-contents ">
|
|
11193
11788
|
<p class="doc doc-class-bases">
|
|
11194
|
-
Bases: <code><
|
|
11789
|
+
Bases: <code><span title="django.forms.CharField">CharField</span></code></p>
|
|
11790
|
+
|
|
11791
|
+
|
|
11792
|
+
<p>A textarea with support for Markdown rendering. Exists mostly just to add a standard help_text.</p>
|
|
11793
|
+
|
|
11794
|
+
|
|
11795
|
+
|
|
11195
11796
|
|
|
11196
11797
|
|
|
11197
|
-
<p>A textarea with support for Markdown rendering. Exists mostly just to add a standard help_text.</p>
|
|
11198
11798
|
|
|
11199
11799
|
|
|
11200
11800
|
|
|
@@ -11230,10 +11830,15 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11230
11830
|
|
|
11231
11831
|
<div class="doc doc-contents ">
|
|
11232
11832
|
<p class="doc doc-class-bases">
|
|
11233
|
-
Bases: <code><
|
|
11833
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.forms.ReturnURLForm" href="#nautobot.apps.forms.ReturnURLForm">ReturnURLForm</a></code></p>
|
|
11834
|
+
|
|
11835
|
+
|
|
11836
|
+
<p>A generic confirmation form. The form is not valid unless the confirm field is checked.</p>
|
|
11837
|
+
|
|
11838
|
+
|
|
11839
|
+
|
|
11234
11840
|
|
|
11235
11841
|
|
|
11236
|
-
<p>A generic confirmation form. The form is not valid unless the confirm field is checked.</p>
|
|
11237
11842
|
|
|
11238
11843
|
|
|
11239
11844
|
|
|
@@ -11269,10 +11874,15 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11269
11874
|
|
|
11270
11875
|
<div class="doc doc-contents ">
|
|
11271
11876
|
<p class="doc doc-class-bases">
|
|
11272
|
-
Bases: <code><
|
|
11877
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
11878
|
+
|
|
11879
|
+
|
|
11880
|
+
<p>Adds the <code>contacts</code> and <code>teams</code> form fields to a filter form.</p>
|
|
11881
|
+
|
|
11882
|
+
|
|
11883
|
+
|
|
11273
11884
|
|
|
11274
11885
|
|
|
11275
|
-
<p>Adds the <code>contacts</code> and <code>teams</code> form fields to a filter form.</p>
|
|
11276
11886
|
|
|
11277
11887
|
|
|
11278
11888
|
|
|
@@ -11308,16 +11918,21 @@ purposes, similar to CSVContentTypeField above.</p>
|
|
|
11308
11918
|
|
|
11309
11919
|
<div class="doc doc-contents ">
|
|
11310
11920
|
<p class="doc doc-class-bases">
|
|
11311
|
-
Bases: <code><
|
|
11921
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.widgets.StaticSelect2" href="#nautobot.apps.forms.StaticSelect2">StaticSelect2</a></code></p>
|
|
11312
11922
|
|
|
11313
11923
|
|
|
11314
|
-
|
|
11924
|
+
<p>Appends an <code>api-value</code> attribute equal to the slugified model name for each ContentType. For example:
|
|
11315
11925
|
<option value="37" api-value="console-server-port">console server port</option>
|
|
11316
11926
|
This attribute can be used to reference the relevant API endpoint for a particular ContentType.</p>
|
|
11317
11927
|
|
|
11318
11928
|
|
|
11319
11929
|
|
|
11320
11930
|
|
|
11931
|
+
|
|
11932
|
+
|
|
11933
|
+
|
|
11934
|
+
|
|
11935
|
+
|
|
11321
11936
|
<div class="doc doc-children">
|
|
11322
11937
|
|
|
11323
11938
|
|
|
@@ -11349,10 +11964,10 @@ This attribute can be used to reference the relevant API endpoint for a particul
|
|
|
11349
11964
|
|
|
11350
11965
|
<div class="doc doc-contents ">
|
|
11351
11966
|
<p class="doc doc-class-bases">
|
|
11352
|
-
Bases: <code><
|
|
11967
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.CSVModelForm" href="#nautobot.apps.forms.CSVModelForm">CSVModelForm</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.CustomFieldModelFormMixin" href="#nautobot.apps.forms.CustomFieldModelFormMixin">CustomFieldModelFormMixin</a></code></p>
|
|
11353
11968
|
|
|
11354
11969
|
|
|
11355
|
-
|
|
11970
|
+
<p>Base class for CSV/JSON/YAML import of models that support custom fields.</p>
|
|
11356
11971
|
<p>TODO: The class name is a misnomer; as of 2.0 this class is <strong>not</strong> used for any CSV imports,
|
|
11357
11972
|
as that's now handled by the REST API. However it is still used when importing component-templates as
|
|
11358
11973
|
part of a JSON/YAML DeviceType import.</p>
|
|
@@ -11360,6 +11975,11 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11360
11975
|
|
|
11361
11976
|
|
|
11362
11977
|
|
|
11978
|
+
|
|
11979
|
+
|
|
11980
|
+
|
|
11981
|
+
|
|
11982
|
+
|
|
11363
11983
|
<div class="doc doc-children">
|
|
11364
11984
|
|
|
11365
11985
|
|
|
@@ -11391,7 +12011,12 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11391
12011
|
|
|
11392
12012
|
<div class="doc doc-contents ">
|
|
11393
12013
|
<p class="doc doc-class-bases">
|
|
11394
|
-
Bases: <code><
|
|
12014
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
12015
|
+
|
|
12016
|
+
|
|
12017
|
+
|
|
12018
|
+
|
|
12019
|
+
|
|
11395
12020
|
|
|
11396
12021
|
|
|
11397
12022
|
|
|
@@ -11428,10 +12053,15 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11428
12053
|
|
|
11429
12054
|
<div class="doc doc-contents ">
|
|
11430
12055
|
<p class="doc doc-class-bases">
|
|
11431
|
-
Bases: <code><
|
|
12056
|
+
Bases: <code><span title="django.forms.TextInput">TextInput</span></code></p>
|
|
12057
|
+
|
|
12058
|
+
|
|
12059
|
+
<p>Date picker using Flatpickr.</p>
|
|
12060
|
+
|
|
12061
|
+
|
|
12062
|
+
|
|
11432
12063
|
|
|
11433
12064
|
|
|
11434
|
-
<p>Date picker using Flatpickr.</p>
|
|
11435
12065
|
|
|
11436
12066
|
|
|
11437
12067
|
|
|
@@ -11467,10 +12097,15 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11467
12097
|
|
|
11468
12098
|
<div class="doc doc-contents ">
|
|
11469
12099
|
<p class="doc doc-class-bases">
|
|
11470
|
-
Bases: <code><
|
|
12100
|
+
Bases: <code><span title="django.forms.TextInput">TextInput</span></code></p>
|
|
12101
|
+
|
|
12102
|
+
|
|
12103
|
+
<p>DateTime picker using Flatpickr.</p>
|
|
12104
|
+
|
|
12105
|
+
|
|
12106
|
+
|
|
11471
12107
|
|
|
11472
12108
|
|
|
11473
|
-
<p>DateTime picker using Flatpickr.</p>
|
|
11474
12109
|
|
|
11475
12110
|
|
|
11476
12111
|
|
|
@@ -11506,10 +12141,15 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11506
12141
|
|
|
11507
12142
|
<div class="doc doc-contents ">
|
|
11508
12143
|
<p class="doc doc-class-bases">
|
|
11509
|
-
Bases: <code><
|
|
12144
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><span title="django.forms.Form">Form</span></code></p>
|
|
12145
|
+
|
|
12146
|
+
|
|
12147
|
+
<p>Form for dynamically inputting filter values for an object list.</p>
|
|
12148
|
+
|
|
12149
|
+
|
|
12150
|
+
|
|
11510
12151
|
|
|
11511
12152
|
|
|
11512
|
-
<p>Form for dynamically inputting filter values for an object list.</p>
|
|
11513
12153
|
|
|
11514
12154
|
|
|
11515
12155
|
|
|
@@ -11545,10 +12185,15 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11545
12185
|
|
|
11546
12186
|
<div class="doc doc-contents ">
|
|
11547
12187
|
<p class="doc doc-class-bases">
|
|
11548
|
-
Bases: <code><
|
|
12188
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
12189
|
+
|
|
12190
|
+
|
|
12191
|
+
<p>Mixin to add <code>dynamic_groups</code> field to model create/edit forms where applicable.</p>
|
|
12192
|
+
|
|
12193
|
+
|
|
12194
|
+
|
|
11549
12195
|
|
|
11550
12196
|
|
|
11551
|
-
<p>Mixin to add <code>dynamic_groups</code> field to model create/edit forms where applicable.</p>
|
|
11552
12197
|
|
|
11553
12198
|
|
|
11554
12199
|
|
|
@@ -11584,15 +12229,20 @@ part of a JSON/YAML DeviceType import.</p>
|
|
|
11584
12229
|
|
|
11585
12230
|
<div class="doc doc-contents ">
|
|
11586
12231
|
<p class="doc doc-class-bases">
|
|
11587
|
-
Bases: <code><
|
|
12232
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.DynamicModelChoiceMixin" href="#nautobot.apps.forms.DynamicModelChoiceMixin">DynamicModelChoiceMixin</a></code>, <code><span title="django.forms.ModelChoiceField">ModelChoiceField</span></code></p>
|
|
11588
12233
|
|
|
11589
12234
|
|
|
11590
|
-
|
|
12235
|
+
<p>Override get_bound_field() to avoid pre-populating field choices with a SQL query. The field will be
|
|
11591
12236
|
rendered only with choices set via bound data. Choices are populated on-demand via the APISelect widget.</p>
|
|
11592
12237
|
|
|
11593
12238
|
|
|
11594
12239
|
|
|
11595
12240
|
|
|
12241
|
+
|
|
12242
|
+
|
|
12243
|
+
|
|
12244
|
+
|
|
12245
|
+
|
|
11596
12246
|
<div class="doc doc-children">
|
|
11597
12247
|
|
|
11598
12248
|
|
|
@@ -11614,7 +12264,7 @@ rendered only with choices set via bound data. Choices are populated on-demand v
|
|
|
11614
12264
|
|
|
11615
12265
|
<div class="doc doc-contents ">
|
|
11616
12266
|
|
|
11617
|
-
|
|
12267
|
+
<p>When null option is enabled and "None" is sent as part of a form to be submitted, it is sent as the
|
|
11618
12268
|
string 'null'. This will check for that condition and gracefully handle the conversion to a NoneType.</p>
|
|
11619
12269
|
|
|
11620
12270
|
</div>
|
|
@@ -11643,7 +12293,7 @@ string 'null'. This will check for that condition and gracefully handle the con
|
|
|
11643
12293
|
<div class="doc doc-contents ">
|
|
11644
12294
|
|
|
11645
12295
|
|
|
11646
|
-
|
|
12296
|
+
<p>:param display_field: The name of the attribute of an API response object to display in the selection list
|
|
11647
12297
|
:param query_params: A dictionary of additional key/value pairs to attach to the API request
|
|
11648
12298
|
:param initial_params: A dictionary of child field references to use for selecting a parent field's initial value
|
|
11649
12299
|
:param null_option: The string used to represent a null selection (if any)
|
|
@@ -11654,6 +12304,11 @@ string 'null'. This will check for that condition and gracefully handle the con
|
|
|
11654
12304
|
|
|
11655
12305
|
|
|
11656
12306
|
|
|
12307
|
+
|
|
12308
|
+
|
|
12309
|
+
|
|
12310
|
+
|
|
12311
|
+
|
|
11657
12312
|
<div class="doc doc-children">
|
|
11658
12313
|
|
|
11659
12314
|
|
|
@@ -11675,7 +12330,7 @@ string 'null'. This will check for that condition and gracefully handle the con
|
|
|
11675
12330
|
|
|
11676
12331
|
<div class="doc doc-contents ">
|
|
11677
12332
|
|
|
11678
|
-
|
|
12333
|
+
<p>Augment the behavior of forms.ModelChoiceField.prepare_value().</p>
|
|
11679
12334
|
<p>Specifically, if <code>value</code> is a PK, but we have <code>to_field_name</code> set, we need to look up the model instance
|
|
11680
12335
|
from the given PK, so that the base class will get the appropriate field value rather than just keeping the PK,
|
|
11681
12336
|
because the rendered form field needs this in order to correctly prepopulate a default selection.</p>
|
|
@@ -11705,10 +12360,15 @@ because the rendered form field needs this in order to correctly prepopulate a d
|
|
|
11705
12360
|
|
|
11706
12361
|
<div class="doc doc-contents ">
|
|
11707
12362
|
<p class="doc doc-class-bases">
|
|
11708
|
-
Bases: <code><
|
|
12363
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.DynamicModelChoiceMixin" href="#nautobot.apps.forms.DynamicModelChoiceMixin">DynamicModelChoiceMixin</a></code>, <code><span title="django.forms.ModelMultipleChoiceField">ModelMultipleChoiceField</span></code></p>
|
|
12364
|
+
|
|
12365
|
+
|
|
12366
|
+
<p>A multiple-choice version of DynamicModelChoiceField.</p>
|
|
12367
|
+
|
|
12368
|
+
|
|
12369
|
+
|
|
11709
12370
|
|
|
11710
12371
|
|
|
11711
|
-
<p>A multiple-choice version of DynamicModelChoiceField.</p>
|
|
11712
12372
|
|
|
11713
12373
|
|
|
11714
12374
|
|
|
@@ -11744,15 +12404,20 @@ because the rendered form field needs this in order to correctly prepopulate a d
|
|
|
11744
12404
|
|
|
11745
12405
|
<div class="doc doc-contents ">
|
|
11746
12406
|
<p class="doc doc-class-bases">
|
|
11747
|
-
Bases: <code><
|
|
12407
|
+
Bases: <code><span title="django.forms.CharField">CharField</span></code></p>
|
|
11748
12408
|
|
|
11749
12409
|
|
|
11750
|
-
|
|
12410
|
+
<p>A field which allows for expansion of IP address ranges
|
|
11751
12411
|
Example: '192.0.2.[1-254]/24' => ['192.0.2.1/24', '192.0.2.2/24', '192.0.2.3/24' ... '192.0.2.254/24']</p>
|
|
11752
12412
|
|
|
11753
12413
|
|
|
11754
12414
|
|
|
11755
12415
|
|
|
12416
|
+
|
|
12417
|
+
|
|
12418
|
+
|
|
12419
|
+
|
|
12420
|
+
|
|
11756
12421
|
<div class="doc doc-children">
|
|
11757
12422
|
|
|
11758
12423
|
|
|
@@ -11784,15 +12449,20 @@ because the rendered form field needs this in order to correctly prepopulate a d
|
|
|
11784
12449
|
|
|
11785
12450
|
<div class="doc doc-contents ">
|
|
11786
12451
|
<p class="doc doc-class-bases">
|
|
11787
|
-
Bases: <code><
|
|
12452
|
+
Bases: <code><span title="django.forms.CharField">CharField</span></code></p>
|
|
11788
12453
|
|
|
11789
12454
|
|
|
11790
|
-
|
|
12455
|
+
<p>A field which allows for numeric range expansion
|
|
11791
12456
|
Example: 'Gi0/[1-3]' => ['Gi0/1', 'Gi0/2', 'Gi0/3']</p>
|
|
11792
12457
|
|
|
11793
12458
|
|
|
11794
12459
|
|
|
11795
12460
|
|
|
12461
|
+
|
|
12462
|
+
|
|
12463
|
+
|
|
12464
|
+
|
|
12465
|
+
|
|
11796
12466
|
<div class="doc doc-children">
|
|
11797
12467
|
|
|
11798
12468
|
|
|
@@ -11824,10 +12494,15 @@ because the rendered form field needs this in order to correctly prepopulate a d
|
|
|
11824
12494
|
|
|
11825
12495
|
<div class="doc doc-contents ">
|
|
11826
12496
|
<p class="doc doc-class-bases">
|
|
11827
|
-
Bases: <code><
|
|
12497
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><span title="django.forms.Form">Form</span></code></p>
|
|
12498
|
+
|
|
12499
|
+
|
|
12500
|
+
<p>Generic form for creating an object from JSON/YAML data</p>
|
|
12501
|
+
|
|
12502
|
+
|
|
12503
|
+
|
|
11828
12504
|
|
|
11829
12505
|
|
|
11830
|
-
<p>Generic form for creating an object from JSON/YAML data</p>
|
|
11831
12506
|
|
|
11832
12507
|
|
|
11833
12508
|
|
|
@@ -11863,16 +12538,21 @@ because the rendered form field needs this in order to correctly prepopulate a d
|
|
|
11863
12538
|
|
|
11864
12539
|
<div class="doc doc-contents ">
|
|
11865
12540
|
<p class="doc doc-class-bases">
|
|
11866
|
-
Bases: <code><
|
|
12541
|
+
Bases: <code><span title="django.forms.JSONField">JSONField</span></code></p>
|
|
11867
12542
|
|
|
11868
12543
|
|
|
11869
|
-
|
|
12544
|
+
<p>A FormField counterpart to JSONArrayField.
|
|
11870
12545
|
Replicates ArrayFormField's base field validation: Field values are validated as JSON Arrays,
|
|
11871
12546
|
and each Array element is validated by <code>base_field</code> validators.</p>
|
|
11872
12547
|
|
|
11873
12548
|
|
|
11874
12549
|
|
|
11875
12550
|
|
|
12551
|
+
|
|
12552
|
+
|
|
12553
|
+
|
|
12554
|
+
|
|
12555
|
+
|
|
11876
12556
|
<div class="doc doc-children">
|
|
11877
12557
|
|
|
11878
12558
|
|
|
@@ -11894,7 +12574,7 @@ and each Array element is validated by <code>base_field</code> validators.</p>
|
|
|
11894
12574
|
|
|
11895
12575
|
<div class="doc doc-contents ">
|
|
11896
12576
|
|
|
11897
|
-
|
|
12577
|
+
<p>Validate <code>value</code> and return its "cleaned" value as an appropriate
|
|
11898
12578
|
Python object. Raise ValidationError for any errors.</p>
|
|
11899
12579
|
|
|
11900
12580
|
</div>
|
|
@@ -11912,7 +12592,7 @@ Python object. Raise ValidationError for any errors.</p>
|
|
|
11912
12592
|
|
|
11913
12593
|
<div class="doc doc-contents ">
|
|
11914
12594
|
|
|
11915
|
-
|
|
12595
|
+
<p>Return True if <code>data</code> differs from <code>initial</code>.</p>
|
|
11916
12596
|
|
|
11917
12597
|
</div>
|
|
11918
12598
|
|
|
@@ -11929,7 +12609,7 @@ Python object. Raise ValidationError for any errors.</p>
|
|
|
11929
12609
|
|
|
11930
12610
|
<div class="doc doc-contents ">
|
|
11931
12611
|
|
|
11932
|
-
|
|
12612
|
+
<p>Return a string of this value.</p>
|
|
11933
12613
|
|
|
11934
12614
|
</div>
|
|
11935
12615
|
|
|
@@ -11946,7 +12626,7 @@ Python object. Raise ValidationError for any errors.</p>
|
|
|
11946
12626
|
|
|
11947
12627
|
<div class="doc doc-contents ">
|
|
11948
12628
|
|
|
11949
|
-
|
|
12629
|
+
<p>Runs all validators against <code>value</code> and raise ValidationError if necessary.
|
|
11950
12630
|
Some validators can't be created at field initialization time.</p>
|
|
11951
12631
|
|
|
11952
12632
|
</div>
|
|
@@ -11964,7 +12644,7 @@ Some validators can't be created at field initialization time.</p>
|
|
|
11964
12644
|
|
|
11965
12645
|
<div class="doc doc-contents ">
|
|
11966
12646
|
|
|
11967
|
-
|
|
12647
|
+
<p>Convert <code>value</code> into JSON, raising django.core.exceptions.ValidationError
|
|
11968
12648
|
if the data can't be converted. Return the converted value.</p>
|
|
11969
12649
|
|
|
11970
12650
|
</div>
|
|
@@ -11974,6 +12654,23 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
11974
12654
|
<div class="doc doc-object doc-function">
|
|
11975
12655
|
|
|
11976
12656
|
|
|
12657
|
+
<h3 id="nautobot.apps.forms.JSONArrayFormField.valid_value" class="doc doc-heading">
|
|
12658
|
+
<code class="highlight language-python"><span class="n">valid_value</span><span class="p">(</span><span class="n">value</span><span class="p">)</span></code>
|
|
12659
|
+
|
|
12660
|
+
<a href="#nautobot.apps.forms.JSONArrayFormField.valid_value" class="headerlink" title="Permanent link">¶</a></h3>
|
|
12661
|
+
|
|
12662
|
+
|
|
12663
|
+
<div class="doc doc-contents ">
|
|
12664
|
+
|
|
12665
|
+
<p>Check to see if the provided value is a valid choice.</p>
|
|
12666
|
+
|
|
12667
|
+
</div>
|
|
12668
|
+
|
|
12669
|
+
</div>
|
|
12670
|
+
|
|
12671
|
+
<div class="doc doc-object doc-function">
|
|
12672
|
+
|
|
12673
|
+
|
|
11977
12674
|
<h3 id="nautobot.apps.forms.JSONArrayFormField.validate" class="doc doc-heading">
|
|
11978
12675
|
<code class="highlight language-python"><span class="n">validate</span><span class="p">(</span><span class="n">value</span><span class="p">)</span></code>
|
|
11979
12676
|
|
|
@@ -11982,7 +12679,7 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
11982
12679
|
|
|
11983
12680
|
<div class="doc doc-contents ">
|
|
11984
12681
|
|
|
11985
|
-
|
|
12682
|
+
<p>Validate <code>value</code> and raise ValidationError if necessary.</p>
|
|
11986
12683
|
|
|
11987
12684
|
</div>
|
|
11988
12685
|
|
|
@@ -12009,10 +12706,15 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
12009
12706
|
|
|
12010
12707
|
<div class="doc doc-contents ">
|
|
12011
12708
|
<p class="doc doc-class-bases">
|
|
12012
|
-
Bases: <code><
|
|
12709
|
+
Bases: <code><span title="django.forms.fields.JSONField">JSONField</span></code></p>
|
|
12710
|
+
|
|
12711
|
+
|
|
12712
|
+
<p>Custom wrapper around Django's built-in JSONField to avoid presenting "null" as the default text.</p>
|
|
12713
|
+
|
|
12714
|
+
|
|
12715
|
+
|
|
12013
12716
|
|
|
12014
12717
|
|
|
12015
|
-
<p>Custom wrapper around Django's built-in JSONField to avoid presenting "null" as the default text.</p>
|
|
12016
12718
|
|
|
12017
12719
|
|
|
12018
12720
|
|
|
@@ -12048,15 +12750,20 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
12048
12750
|
|
|
12049
12751
|
<div class="doc doc-contents ">
|
|
12050
12752
|
<p class="doc doc-class-bases">
|
|
12051
|
-
Bases: <code><
|
|
12753
|
+
Bases: <code><span title="django.forms.URLField">URLField</span></code></p>
|
|
12052
12754
|
|
|
12053
12755
|
|
|
12054
|
-
|
|
12756
|
+
<p>Modifies Django's built-in URLField to remove the requirement for fully-qualified domain names
|
|
12055
12757
|
(e.g. http://myserver/ is valid)</p>
|
|
12056
12758
|
|
|
12057
12759
|
|
|
12058
12760
|
|
|
12059
12761
|
|
|
12762
|
+
|
|
12763
|
+
|
|
12764
|
+
|
|
12765
|
+
|
|
12766
|
+
|
|
12060
12767
|
<div class="doc doc-children">
|
|
12061
12768
|
|
|
12062
12769
|
|
|
@@ -12088,15 +12795,20 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
12088
12795
|
|
|
12089
12796
|
<div class="doc doc-contents ">
|
|
12090
12797
|
<p class="doc doc-class-bases">
|
|
12091
|
-
Bases: <code><
|
|
12798
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.DynamicModelChoiceMixin" href="#nautobot.apps.forms.DynamicModelChoiceMixin">DynamicModelChoiceMixin</a></code>, <code><span title="django_filters.fields.ModelMultipleChoiceField">ModelMultipleChoiceField</span></code></p>
|
|
12092
12799
|
|
|
12093
12800
|
|
|
12094
|
-
|
|
12801
|
+
<p>Filter field to support matching on the PK <em>or</em> <code>to_field_name</code> fields (defaulting to <code>slug</code> if not specified).</p>
|
|
12095
12802
|
<p>Raises ValidationError if none of the fields match the requested value.</p>
|
|
12096
12803
|
|
|
12097
12804
|
|
|
12098
12805
|
|
|
12099
12806
|
|
|
12807
|
+
|
|
12808
|
+
|
|
12809
|
+
|
|
12810
|
+
|
|
12811
|
+
|
|
12100
12812
|
<div class="doc doc-children">
|
|
12101
12813
|
|
|
12102
12814
|
|
|
@@ -12128,15 +12840,20 @@ if the data can't be converted. Return the converted value.</p>
|
|
|
12128
12840
|
|
|
12129
12841
|
<div class="doc doc-contents ">
|
|
12130
12842
|
<p class="doc doc-class-bases">
|
|
12131
|
-
Bases: <code><
|
|
12843
|
+
Bases: <code><span title="django.forms.CharField">CharField</span></code></p>
|
|
12132
12844
|
|
|
12133
12845
|
|
|
12134
|
-
|
|
12846
|
+
<p>CharField that takes multiple user character inputs and render them as tags in the form field.
|
|
12135
12847
|
Press enter to complete an input.</p>
|
|
12136
12848
|
|
|
12137
12849
|
|
|
12138
12850
|
|
|
12139
12851
|
|
|
12852
|
+
|
|
12853
|
+
|
|
12854
|
+
|
|
12855
|
+
|
|
12856
|
+
|
|
12140
12857
|
<div class="doc doc-children">
|
|
12141
12858
|
|
|
12142
12859
|
|
|
@@ -12168,15 +12885,20 @@ Press enter to complete an input.</p>
|
|
|
12168
12885
|
|
|
12169
12886
|
<div class="doc doc-contents ">
|
|
12170
12887
|
<p class="doc doc-class-bases">
|
|
12171
|
-
Bases: <code><
|
|
12888
|
+
Bases: <code><span title="nautobot.core.forms.widgets.StaticSelect2Multiple">StaticSelect2Multiple</span></code></p>
|
|
12172
12889
|
|
|
12173
12890
|
|
|
12174
|
-
|
|
12891
|
+
<p>Manual text input with tagging enabled.
|
|
12175
12892
|
Press enter to create a new entry.</p>
|
|
12176
12893
|
|
|
12177
12894
|
|
|
12178
12895
|
|
|
12179
12896
|
|
|
12897
|
+
|
|
12898
|
+
|
|
12899
|
+
|
|
12900
|
+
|
|
12901
|
+
|
|
12180
12902
|
<div class="doc doc-children">
|
|
12181
12903
|
|
|
12182
12904
|
|
|
@@ -12208,16 +12930,21 @@ Press enter to create a new entry.</p>
|
|
|
12208
12930
|
|
|
12209
12931
|
<div class="doc doc-contents ">
|
|
12210
12932
|
<p class="doc doc-class-bases">
|
|
12211
|
-
Bases: <code><
|
|
12933
|
+
Bases: <code><span title="django.forms.ModelMultipleChoiceField">ModelMultipleChoiceField</span></code></p>
|
|
12212
12934
|
|
|
12213
12935
|
|
|
12214
|
-
|
|
12936
|
+
<p>Field for choosing any number of <code>ContentType</code> objects.</p>
|
|
12215
12937
|
<p>Optionally can restrict the available ContentTypes to those supporting a particular feature only.
|
|
12216
12938
|
Optionally can pass the selection through as a list of <code>{app_label}.{model}</code> strings instead of PK values.</p>
|
|
12217
12939
|
|
|
12218
12940
|
|
|
12219
12941
|
|
|
12220
12942
|
|
|
12943
|
+
|
|
12944
|
+
|
|
12945
|
+
|
|
12946
|
+
|
|
12947
|
+
|
|
12221
12948
|
<div class="doc doc-children">
|
|
12222
12949
|
|
|
12223
12950
|
|
|
@@ -12239,7 +12966,7 @@ Optionally can pass the selection through as a list of <code>{app_label}.{model}
|
|
|
12239
12966
|
|
|
12240
12967
|
<div class="doc doc-contents ">
|
|
12241
12968
|
|
|
12242
|
-
|
|
12969
|
+
<p>Construct a MultipleContentTypeField.</p>
|
|
12243
12970
|
|
|
12244
12971
|
|
|
12245
12972
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -12254,9 +12981,11 @@ Optionally can pass the selection through as a list of <code>{app_label}.{model}
|
|
|
12254
12981
|
</thead>
|
|
12255
12982
|
<tbody>
|
|
12256
12983
|
<tr class="doc-section-item">
|
|
12257
|
-
<td><code>feature</code></td>
|
|
12258
12984
|
<td>
|
|
12259
|
-
|
|
12985
|
+
<code>feature</code>
|
|
12986
|
+
</td>
|
|
12987
|
+
<td>
|
|
12988
|
+
<code>str</code>
|
|
12260
12989
|
</td>
|
|
12261
12990
|
<td>
|
|
12262
12991
|
<div class="doc-md-description">
|
|
@@ -12268,9 +12997,11 @@ Optionally can pass the selection through as a list of <code>{app_label}.{model}
|
|
|
12268
12997
|
</td>
|
|
12269
12998
|
</tr>
|
|
12270
12999
|
<tr class="doc-section-item">
|
|
12271
|
-
<td><code>choices_as_strings</code></td>
|
|
12272
13000
|
<td>
|
|
12273
|
-
|
|
13001
|
+
<code>choices_as_strings</code>
|
|
13002
|
+
</td>
|
|
13003
|
+
<td>
|
|
13004
|
+
<code>bool</code>
|
|
12274
13005
|
</td>
|
|
12275
13006
|
<td>
|
|
12276
13007
|
<div class="doc-md-description">
|
|
@@ -12309,10 +13040,15 @@ Optionally can pass the selection through as a list of <code>{app_label}.{model}
|
|
|
12309
13040
|
|
|
12310
13041
|
<div class="doc doc-contents ">
|
|
12311
13042
|
<p class="doc doc-class-bases">
|
|
12312
|
-
Bases: <code><
|
|
13043
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><span title="nautobot.extras.forms.mixins.CustomFieldModelBulkEditFormMixin">CustomFieldModelBulkEditFormMixin</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.NoteModelBulkEditFormMixin" href="#nautobot.apps.forms.NoteModelBulkEditFormMixin">NoteModelBulkEditFormMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.RelationshipModelBulkEditFormMixin" href="#nautobot.apps.forms.RelationshipModelBulkEditFormMixin">RelationshipModelBulkEditFormMixin</a></code></p>
|
|
13044
|
+
|
|
13045
|
+
|
|
13046
|
+
<p>Base class for bulk-edit forms for models that support relationships, custom fields and notes.</p>
|
|
13047
|
+
|
|
13048
|
+
|
|
13049
|
+
|
|
12313
13050
|
|
|
12314
13051
|
|
|
12315
|
-
<p>Base class for bulk-edit forms for models that support relationships, custom fields and notes.</p>
|
|
12316
13052
|
|
|
12317
13053
|
|
|
12318
13054
|
|
|
@@ -12348,16 +13084,21 @@ Optionally can pass the selection through as a list of <code>{app_label}.{model}
|
|
|
12348
13084
|
|
|
12349
13085
|
<div class="doc doc-contents ">
|
|
12350
13086
|
<p class="doc doc-class-bases">
|
|
12351
|
-
Bases: <code><
|
|
13087
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.ContactTeamModelFilterFormMixin" href="#nautobot.apps.forms.ContactTeamModelFilterFormMixin">ContactTeamModelFilterFormMixin</a></code>, <code><span title="nautobot.extras.forms.mixins.CustomFieldModelFilterFormMixin">CustomFieldModelFilterFormMixin</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.RelationshipModelFilterFormMixin" href="#nautobot.apps.forms.RelationshipModelFilterFormMixin">RelationshipModelFilterFormMixin</a></code></p>
|
|
12352
13088
|
|
|
12353
13089
|
|
|
12354
|
-
|
|
13090
|
+
<p>This class exists to combine common functionality and is used to inherit from throughout the
|
|
12355
13091
|
codebase where all of ContactTeamModelFilterFormMixin, CustomFieldModelFilterFormMixin, and
|
|
12356
13092
|
RelationshipModelFilterFormMixin are needed.</p>
|
|
12357
13093
|
|
|
12358
13094
|
|
|
12359
13095
|
|
|
12360
13096
|
|
|
13097
|
+
|
|
13098
|
+
|
|
13099
|
+
|
|
13100
|
+
|
|
13101
|
+
|
|
12361
13102
|
<div class="doc doc-children">
|
|
12362
13103
|
|
|
12363
13104
|
|
|
@@ -12389,16 +13130,21 @@ RelationshipModelFilterFormMixin are needed.</p>
|
|
|
12389
13130
|
|
|
12390
13131
|
<div class="doc doc-contents ">
|
|
12391
13132
|
<p class="doc doc-class-bases">
|
|
12392
|
-
Bases: <code><
|
|
13133
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.CustomFieldModelFormMixin" href="#nautobot.apps.forms.CustomFieldModelFormMixin">CustomFieldModelFormMixin</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.DynamicGroupModelFormMixin" href="#nautobot.apps.forms.DynamicGroupModelFormMixin">DynamicGroupModelFormMixin</a></code>, <code><span title="nautobot.extras.forms.mixins.NoteModelFormMixin">NoteModelFormMixin</span></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.RelationshipModelFormMixin" href="#nautobot.apps.forms.RelationshipModelFormMixin">RelationshipModelFormMixin</a></code></p>
|
|
12393
13134
|
|
|
12394
13135
|
|
|
12395
|
-
|
|
13136
|
+
<p>This class exists to combine common functionality and is used to inherit from throughout the
|
|
12396
13137
|
codebase where all of BootstrapMixin, CustomFieldModelFormMixin, RelationshipModelFormMixin, and
|
|
12397
13138
|
NoteModelFormMixin are needed.</p>
|
|
12398
13139
|
|
|
12399
13140
|
|
|
12400
13141
|
|
|
12401
13142
|
|
|
13143
|
+
|
|
13144
|
+
|
|
13145
|
+
|
|
13146
|
+
|
|
13147
|
+
|
|
12402
13148
|
<div class="doc doc-children">
|
|
12403
13149
|
|
|
12404
13150
|
|
|
@@ -12430,10 +13176,15 @@ NoteModelFormMixin are needed.</p>
|
|
|
12430
13176
|
|
|
12431
13177
|
<div class="doc doc-contents ">
|
|
12432
13178
|
<p class="doc doc-class-bases">
|
|
12433
|
-
Bases: <code><
|
|
13179
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13180
|
+
|
|
13181
|
+
|
|
13182
|
+
<p>Base for the NoteModelFormMixin and NoteModelBulkEditFormMixin.</p>
|
|
13183
|
+
|
|
13184
|
+
|
|
13185
|
+
|
|
12434
13186
|
|
|
12435
13187
|
|
|
12436
|
-
<p>Base for the NoteModelFormMixin and NoteModelBulkEditFormMixin.</p>
|
|
12437
13188
|
|
|
12438
13189
|
|
|
12439
13190
|
|
|
@@ -12469,10 +13220,15 @@ NoteModelFormMixin are needed.</p>
|
|
|
12469
13220
|
|
|
12470
13221
|
<div class="doc doc-contents ">
|
|
12471
13222
|
<p class="doc doc-class-bases">
|
|
12472
|
-
Bases: <code><
|
|
13223
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.BulkEditForm" href="#nautobot.apps.forms.BulkEditForm">BulkEditForm</a></code>, <code><a class="autorefs autorefs-internal" title="nautobot.extras.forms.mixins.NoteFormBase" href="#nautobot.apps.forms.NoteFormBase">NoteFormBase</a></code></p>
|
|
13224
|
+
|
|
13225
|
+
|
|
13226
|
+
<p>Bulk-edit form mixin for models that support Notes.</p>
|
|
13227
|
+
|
|
13228
|
+
|
|
13229
|
+
|
|
12473
13230
|
|
|
12474
13231
|
|
|
12475
|
-
<p>Bulk-edit form mixin for models that support Notes.</p>
|
|
12476
13232
|
|
|
12477
13233
|
|
|
12478
13234
|
|
|
@@ -12508,10 +13264,15 @@ NoteModelFormMixin are needed.</p>
|
|
|
12508
13264
|
|
|
12509
13265
|
<div class="doc doc-contents ">
|
|
12510
13266
|
<p class="doc doc-class-bases">
|
|
12511
|
-
Bases: <code><
|
|
13267
|
+
Bases: <code><span title="django.contrib.postgres.forms.SimpleArrayField">SimpleArrayField</span></code></p>
|
|
13268
|
+
|
|
13269
|
+
|
|
13270
|
+
<p>Basic array field that takes comma-separated or hyphenated ranges.</p>
|
|
13271
|
+
|
|
13272
|
+
|
|
13273
|
+
|
|
12512
13274
|
|
|
12513
13275
|
|
|
12514
|
-
<p>Basic array field that takes comma-separated or hyphenated ranges.</p>
|
|
12515
13276
|
|
|
12516
13277
|
|
|
12517
13278
|
|
|
@@ -12547,10 +13308,15 @@ NoteModelFormMixin are needed.</p>
|
|
|
12547
13308
|
|
|
12548
13309
|
<div class="doc doc-contents ">
|
|
12549
13310
|
<p class="doc doc-class-bases">
|
|
12550
|
-
Bases: <code><
|
|
13311
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
13312
|
+
|
|
13313
|
+
|
|
13314
|
+
<p>ModelForm mixin for IPNetwork based models.</p>
|
|
13315
|
+
|
|
13316
|
+
|
|
13317
|
+
|
|
12551
13318
|
|
|
12552
13319
|
|
|
12553
|
-
<p>ModelForm mixin for IPNetwork based models.</p>
|
|
12554
13320
|
|
|
12555
13321
|
|
|
12556
13322
|
|
|
@@ -12586,10 +13352,15 @@ NoteModelFormMixin are needed.</p>
|
|
|
12586
13352
|
|
|
12587
13353
|
<div class="doc doc-contents ">
|
|
12588
13354
|
<p class="doc doc-class-bases">
|
|
12589
|
-
Bases: <code><
|
|
13355
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.BulkEditForm" href="#nautobot.apps.forms.BulkEditForm">BulkEditForm</a></code></p>
|
|
13356
|
+
|
|
13357
|
+
|
|
13358
|
+
<p>Bulk-edit form mixin for models that support Relationships.</p>
|
|
13359
|
+
|
|
13360
|
+
|
|
13361
|
+
|
|
12590
13362
|
|
|
12591
13363
|
|
|
12592
|
-
<p>Bulk-edit form mixin for models that support Relationships.</p>
|
|
12593
13364
|
|
|
12594
13365
|
|
|
12595
13366
|
|
|
@@ -12615,7 +13386,7 @@ NoteModelFormMixin are needed.</p>
|
|
|
12615
13386
|
|
|
12616
13387
|
<div class="doc doc-contents ">
|
|
12617
13388
|
|
|
12618
|
-
|
|
13389
|
+
<p>Helper method to be called from BulkEditView.post().</p>
|
|
12619
13390
|
|
|
12620
13391
|
</div>
|
|
12621
13392
|
|
|
@@ -12642,7 +13413,12 @@ NoteModelFormMixin are needed.</p>
|
|
|
12642
13413
|
|
|
12643
13414
|
<div class="doc doc-contents ">
|
|
12644
13415
|
<p class="doc doc-class-bases">
|
|
12645
|
-
Bases: <code><
|
|
13416
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13417
|
+
|
|
13418
|
+
|
|
13419
|
+
|
|
13420
|
+
|
|
13421
|
+
|
|
12646
13422
|
|
|
12647
13423
|
|
|
12648
13424
|
|
|
@@ -12679,7 +13455,12 @@ NoteModelFormMixin are needed.</p>
|
|
|
12679
13455
|
|
|
12680
13456
|
<div class="doc doc-contents ">
|
|
12681
13457
|
<p class="doc doc-class-bases">
|
|
12682
|
-
Bases: <code><
|
|
13458
|
+
Bases: <code><span title="django.forms.ModelForm">ModelForm</span></code></p>
|
|
13459
|
+
|
|
13460
|
+
|
|
13461
|
+
|
|
13462
|
+
|
|
13463
|
+
|
|
12683
13464
|
|
|
12684
13465
|
|
|
12685
13466
|
|
|
@@ -12706,7 +13487,7 @@ NoteModelFormMixin are needed.</p>
|
|
|
12706
13487
|
|
|
12707
13488
|
<div class="doc doc-contents ">
|
|
12708
13489
|
|
|
12709
|
-
|
|
13490
|
+
<p>First check for any required relationships errors and if there are any, add them via form field errors.
|
|
12710
13491
|
Then verify that any requested RelationshipAssociations do not violate relationship cardinality restrictions.</p>
|
|
12711
13492
|
<ul>
|
|
12712
13493
|
<li>For TYPE_ONE_TO_MANY and TYPE_ONE_TO_ONE relations, if the form's object is on the "source" side of
|
|
@@ -12742,10 +13523,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12742
13523
|
|
|
12743
13524
|
<div class="doc doc-contents ">
|
|
12744
13525
|
<p class="doc doc-class-bases">
|
|
12745
|
-
Bases: <code><
|
|
13526
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13527
|
+
|
|
13528
|
+
|
|
13529
|
+
<p>Provides a hidden return URL field to control where the user is directed after the form is submitted.</p>
|
|
13530
|
+
|
|
13531
|
+
|
|
13532
|
+
|
|
12746
13533
|
|
|
12747
13534
|
|
|
12748
|
-
<p>Provides a hidden return URL field to control where the user is directed after the form is submitted.</p>
|
|
12749
13535
|
|
|
12750
13536
|
|
|
12751
13537
|
|
|
@@ -12781,10 +13567,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12781
13567
|
|
|
12782
13568
|
<div class="doc doc-contents ">
|
|
12783
13569
|
<p class="doc doc-class-bases">
|
|
12784
|
-
Bases: <code><
|
|
13570
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13571
|
+
|
|
13572
|
+
|
|
13573
|
+
<p>Mixin to add non-required <code>role</code> choice field to forms.</p>
|
|
13574
|
+
|
|
13575
|
+
|
|
13576
|
+
|
|
12785
13577
|
|
|
12786
13578
|
|
|
12787
|
-
<p>Mixin to add non-required <code>role</code> choice field to forms.</p>
|
|
12788
13579
|
|
|
12789
13580
|
|
|
12790
13581
|
|
|
@@ -12820,10 +13611,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12820
13611
|
|
|
12821
13612
|
<div class="doc doc-contents ">
|
|
12822
13613
|
<p class="doc doc-class-bases">
|
|
12823
|
-
Bases: <code><
|
|
13614
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13615
|
+
|
|
13616
|
+
|
|
13617
|
+
<p>Mixin to add non-required <code>role</code> multiple-choice field to filter forms.</p>
|
|
13618
|
+
|
|
13619
|
+
|
|
13620
|
+
|
|
12824
13621
|
|
|
12825
13622
|
|
|
12826
|
-
<p>Mixin to add non-required <code>role</code> multiple-choice field to filter forms.</p>
|
|
12827
13623
|
|
|
12828
13624
|
|
|
12829
13625
|
|
|
@@ -12859,15 +13655,20 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12859
13655
|
|
|
12860
13656
|
<div class="doc doc-contents ">
|
|
12861
13657
|
<p class="doc doc-class-bases">
|
|
12862
|
-
Bases: <code><
|
|
13658
|
+
Bases: <code><span title="django.forms.Select">Select</span></code></p>
|
|
12863
13659
|
|
|
12864
13660
|
|
|
12865
|
-
|
|
13661
|
+
<p>Modified the stock Select widget to accept choices using a dict() for a label. The dict for each option must include
|
|
12866
13662
|
'label' (string) and 'disabled' (boolean).</p>
|
|
12867
13663
|
|
|
12868
13664
|
|
|
12869
13665
|
|
|
12870
13666
|
|
|
13667
|
+
|
|
13668
|
+
|
|
13669
|
+
|
|
13670
|
+
|
|
13671
|
+
|
|
12871
13672
|
<div class="doc doc-children">
|
|
12872
13673
|
|
|
12873
13674
|
|
|
@@ -12899,10 +13700,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12899
13700
|
|
|
12900
13701
|
<div class="doc doc-contents ">
|
|
12901
13702
|
<p class="doc doc-class-bases">
|
|
12902
|
-
Bases: <code><
|
|
13703
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.widgets.StaticSelect2" href="#nautobot.apps.forms.StaticSelect2">StaticSelect2</a></code></p>
|
|
13704
|
+
|
|
13705
|
+
|
|
13706
|
+
<p>Include the primary key of each option in the option label (e.g. "Router7 (4721)").</p>
|
|
13707
|
+
|
|
13708
|
+
|
|
13709
|
+
|
|
12903
13710
|
|
|
12904
13711
|
|
|
12905
|
-
<p>Include the primary key of each option in the option label (e.g. "Router7 (4721)").</p>
|
|
12906
13712
|
|
|
12907
13713
|
|
|
12908
13714
|
|
|
@@ -12938,10 +13744,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12938
13744
|
|
|
12939
13745
|
<div class="doc doc-contents ">
|
|
12940
13746
|
<p class="doc doc-class-bases">
|
|
12941
|
-
Bases: <code><
|
|
13747
|
+
Bases: <code><span title="django.forms.SlugField">SlugField</span></code></p>
|
|
13748
|
+
|
|
13749
|
+
|
|
13750
|
+
<p>Extend the built-in SlugField to automatically populate from a field called <code>name</code> unless otherwise specified.</p>
|
|
13751
|
+
|
|
13752
|
+
|
|
13753
|
+
|
|
12942
13754
|
|
|
12943
13755
|
|
|
12944
|
-
<p>Extend the built-in SlugField to automatically populate from a field called <code>name</code> unless otherwise specified.</p>
|
|
12945
13756
|
|
|
12946
13757
|
|
|
12947
13758
|
|
|
@@ -12967,7 +13778,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12967
13778
|
|
|
12968
13779
|
<div class="doc doc-contents ">
|
|
12969
13780
|
|
|
12970
|
-
|
|
13781
|
+
<p>Instantiate a SlugField.</p>
|
|
12971
13782
|
|
|
12972
13783
|
|
|
12973
13784
|
<p><span class="doc-section-title">Parameters:</span></p>
|
|
@@ -12982,9 +13793,11 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
12982
13793
|
</thead>
|
|
12983
13794
|
<tbody>
|
|
12984
13795
|
<tr class="doc-section-item">
|
|
12985
|
-
<td><code>slug_source</code></td>
|
|
12986
13796
|
<td>
|
|
12987
|
-
|
|
13797
|
+
<code>slug_source</code>
|
|
13798
|
+
</td>
|
|
13799
|
+
<td>
|
|
13800
|
+
<code>(str, tuple)</code>
|
|
12988
13801
|
</td>
|
|
12989
13802
|
<td>
|
|
12990
13803
|
<div class="doc-md-description">
|
|
@@ -13023,10 +13836,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13023
13836
|
|
|
13024
13837
|
<div class="doc doc-contents ">
|
|
13025
13838
|
<p class="doc doc-class-bases">
|
|
13026
|
-
Bases: <code><
|
|
13839
|
+
Bases: <code><span title="django.forms.TextInput">TextInput</span></code></p>
|
|
13840
|
+
|
|
13841
|
+
|
|
13842
|
+
<p>Subclass TextInput and add a slug regeneration button next to the form field.</p>
|
|
13843
|
+
|
|
13844
|
+
|
|
13845
|
+
|
|
13027
13846
|
|
|
13028
13847
|
|
|
13029
|
-
<p>Subclass TextInput and add a slug regeneration button next to the form field.</p>
|
|
13030
13848
|
|
|
13031
13849
|
|
|
13032
13850
|
|
|
@@ -13062,10 +13880,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13062
13880
|
|
|
13063
13881
|
<div class="doc doc-contents ">
|
|
13064
13882
|
<p class="doc doc-class-bases">
|
|
13065
|
-
Bases: <code><
|
|
13883
|
+
Bases: <code><span title="django.forms.Textarea">Textarea</span></code></p>
|
|
13884
|
+
|
|
13885
|
+
|
|
13886
|
+
<p>Subclass used for rendering a smaller textarea element.</p>
|
|
13887
|
+
|
|
13888
|
+
|
|
13889
|
+
|
|
13066
13890
|
|
|
13067
13891
|
|
|
13068
|
-
<p>Subclass used for rendering a smaller textarea element.</p>
|
|
13069
13892
|
|
|
13070
13893
|
|
|
13071
13894
|
</div>
|
|
@@ -13085,10 +13908,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13085
13908
|
|
|
13086
13909
|
<div class="doc doc-contents ">
|
|
13087
13910
|
<p class="doc doc-class-bases">
|
|
13088
|
-
Bases: <code><
|
|
13911
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.widgets.SelectWithDisabled" href="#nautobot.apps.forms.SelectWithDisabled">SelectWithDisabled</a></code></p>
|
|
13912
|
+
|
|
13913
|
+
|
|
13914
|
+
<p>A static <select> form widget using the Select2 library.</p>
|
|
13915
|
+
|
|
13916
|
+
|
|
13917
|
+
|
|
13089
13918
|
|
|
13090
13919
|
|
|
13091
|
-
<p>A static <select> form widget using the Select2 library.</p>
|
|
13092
13920
|
|
|
13093
13921
|
|
|
13094
13922
|
|
|
@@ -13124,10 +13952,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13124
13952
|
|
|
13125
13953
|
<div class="doc doc-contents ">
|
|
13126
13954
|
<p class="doc doc-class-bases">
|
|
13127
|
-
Bases: <code><
|
|
13955
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
13956
|
+
|
|
13957
|
+
|
|
13958
|
+
<p>Mixin to add non-required <code>status</code> choice field to forms.</p>
|
|
13959
|
+
|
|
13960
|
+
|
|
13961
|
+
|
|
13128
13962
|
|
|
13129
13963
|
|
|
13130
|
-
<p>Mixin to add non-required <code>status</code> choice field to forms.</p>
|
|
13131
13964
|
|
|
13132
13965
|
|
|
13133
13966
|
|
|
@@ -13163,10 +13996,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13163
13996
|
|
|
13164
13997
|
<div class="doc doc-contents ">
|
|
13165
13998
|
<p class="doc doc-class-bases">
|
|
13166
|
-
Bases: <code><
|
|
13999
|
+
Bases: <code><span title="django.forms.Form">Form</span></code></p>
|
|
14000
|
+
|
|
14001
|
+
|
|
14002
|
+
<p>Mixin to add non-required <code>status</code> multiple-choice field to filter forms.</p>
|
|
14003
|
+
|
|
14004
|
+
|
|
14005
|
+
|
|
13167
14006
|
|
|
13168
14007
|
|
|
13169
|
-
<p>Mixin to add non-required <code>status</code> multiple-choice field to filter forms.</p>
|
|
13170
14008
|
|
|
13171
14009
|
|
|
13172
14010
|
|
|
@@ -13202,10 +14040,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13202
14040
|
|
|
13203
14041
|
<div class="doc doc-contents ">
|
|
13204
14042
|
<p class="doc doc-class-bases">
|
|
13205
|
-
Bases: <code><
|
|
14043
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.forms.BootstrapMixin" href="#nautobot.apps.forms.BootstrapMixin">BootstrapMixin</a></code>, <code><span title="django.forms.Form">Form</span></code></p>
|
|
14044
|
+
|
|
14045
|
+
|
|
14046
|
+
<p>Form for configuring user's table preferences.</p>
|
|
14047
|
+
|
|
14048
|
+
|
|
14049
|
+
|
|
13206
14050
|
|
|
13207
14051
|
|
|
13208
|
-
<p>Form for configuring user's table preferences.</p>
|
|
13209
14052
|
|
|
13210
14053
|
|
|
13211
14054
|
|
|
@@ -13241,15 +14084,20 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13241
14084
|
|
|
13242
14085
|
<div class="doc doc-contents ">
|
|
13243
14086
|
<p class="doc doc-class-bases">
|
|
13244
|
-
Bases: <code><
|
|
14087
|
+
Bases: <code><a class="autorefs autorefs-internal" title="nautobot.core.forms.fields.DynamicModelMultipleChoiceField" href="#nautobot.apps.forms.DynamicModelMultipleChoiceField">DynamicModelMultipleChoiceField</a></code></p>
|
|
13245
14088
|
|
|
13246
14089
|
|
|
13247
|
-
|
|
14090
|
+
<p>A filter field for the tags of a model. Only the tags used by a model are displayed.</p>
|
|
13248
14091
|
<p>:param model: The model of the filter</p>
|
|
13249
14092
|
|
|
13250
14093
|
|
|
13251
14094
|
|
|
13252
14095
|
|
|
14096
|
+
|
|
14097
|
+
|
|
14098
|
+
|
|
14099
|
+
|
|
14100
|
+
|
|
13253
14101
|
<div class="doc doc-children">
|
|
13254
14102
|
|
|
13255
14103
|
|
|
@@ -13281,10 +14129,15 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13281
14129
|
|
|
13282
14130
|
<div class="doc doc-contents ">
|
|
13283
14131
|
<p class="doc doc-class-bases">
|
|
13284
|
-
Bases: <code><
|
|
14132
|
+
Bases: <code><span title="django.forms.TextInput">TextInput</span></code></p>
|
|
14133
|
+
|
|
14134
|
+
|
|
14135
|
+
<p>Time picker using Flatpickr.</p>
|
|
14136
|
+
|
|
14137
|
+
|
|
14138
|
+
|
|
13285
14139
|
|
|
13286
14140
|
|
|
13287
|
-
<p>Time picker using Flatpickr.</p>
|
|
13288
14141
|
|
|
13289
14142
|
|
|
13290
14143
|
|
|
@@ -13319,7 +14172,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13319
14172
|
|
|
13320
14173
|
<div class="doc doc-contents ">
|
|
13321
14174
|
|
|
13322
|
-
|
|
14175
|
+
<p>Add a blank choice to the beginning of a choices list.</p>
|
|
13323
14176
|
|
|
13324
14177
|
</div>
|
|
13325
14178
|
|
|
@@ -13336,7 +14189,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13336
14189
|
|
|
13337
14190
|
<div class="doc doc-contents ">
|
|
13338
14191
|
|
|
13339
|
-
|
|
14192
|
+
<p>Attach a field to an existing filter form class.</p>
|
|
13340
14193
|
|
|
13341
14194
|
</div>
|
|
13342
14195
|
|
|
@@ -13353,7 +14206,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13353
14206
|
|
|
13354
14207
|
<div class="doc doc-contents ">
|
|
13355
14208
|
|
|
13356
|
-
|
|
14209
|
+
<p>Expand an alphabetic pattern into a list of strings.</p>
|
|
13357
14210
|
|
|
13358
14211
|
</div>
|
|
13359
14212
|
|
|
@@ -13370,7 +14223,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13370
14223
|
|
|
13371
14224
|
<div class="doc doc-contents ">
|
|
13372
14225
|
|
|
13373
|
-
|
|
14226
|
+
<p>Expand an IP address pattern into a list of strings. Examples:
|
|
13374
14227
|
'192.0.2.[1,2,100-250]/24' => ['192.0.2.1/24', '192.0.2.2/24', '192.0.2.100/24' ... '192.0.2.250/24']
|
|
13375
14228
|
'2001:db8:0:[0,fd-ff]::/64' => ['2001:db8:0:0::/64', '2001:db8:0:fd::/64', ... '2001:db8:0:ff::/64']</p>
|
|
13376
14229
|
|
|
@@ -13389,7 +14242,7 @@ Then verify that any requested RelationshipAssociations do not violate relations
|
|
|
13389
14242
|
|
|
13390
14243
|
<div class="doc doc-contents ">
|
|
13391
14244
|
|
|
13392
|
-
|
|
14245
|
+
<p>Return a Form class with the specified fields derived from a model. This is useful when we need a form to be used
|
|
13393
14246
|
for creating objects, but want to avoid the model's validation (e.g. for bulk create/edit functions). All fields
|
|
13394
14247
|
are marked as not required.</p>
|
|
13395
14248
|
|
|
@@ -13408,7 +14261,7 @@ are marked as not required.</p>
|
|
|
13408
14261
|
|
|
13409
14262
|
<div class="doc doc-contents ">
|
|
13410
14263
|
|
|
13411
|
-
|
|
14264
|
+
<p>Expand an alphanumeric range (continuous or not) into a list.
|
|
13412
14265
|
'a-d,f' => [a, b, c, d, f]
|
|
13413
14266
|
'0-3,a-d' => [0, 1, 2, 3, a, b, c, d]</p>
|
|
13414
14267
|
|
|
@@ -13427,7 +14280,7 @@ are marked as not required.</p>
|
|
|
13427
14280
|
|
|
13428
14281
|
<div class="doc doc-contents ">
|
|
13429
14282
|
|
|
13430
|
-
|
|
14283
|
+
<p>Expand a numeric range (continuous or not) into a sorted decimal or
|
|
13431
14284
|
hexadecimal list, as specified by the base parameter
|
|
13432
14285
|
'0-3,5' => [0, 1, 2, 3, 5]
|
|
13433
14286
|
'2,8-b,d,f' => [2, 8, 9, a, b, d, f]</p>
|
|
@@ -13447,7 +14300,7 @@ hexadecimal list, as specified by the base parameter
|
|
|
13447
14300
|
|
|
13448
14301
|
<div class="doc doc-contents ">
|
|
13449
14302
|
|
|
13450
|
-
|
|
14303
|
+
<p>Restrict all form fields which reference a RestrictedQuerySet. This ensures that users see only permitted objects
|
|
13451
14304
|
as available choices.</p>
|
|
13452
14305
|
|
|
13453
14306
|
</div>
|
|
@@ -13604,10 +14457,10 @@ as available choices.</p>
|
|
|
13604
14457
|
</div>
|
|
13605
14458
|
|
|
13606
14459
|
|
|
13607
|
-
<script id="__config" type="application/json">{"base": "../../..", "features": ["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.6ce7567c.min.js", "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"}}</script>
|
|
14460
|
+
<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.6ce7567c.min.js", "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"}}</script>
|
|
13608
14461
|
|
|
13609
14462
|
|
|
13610
|
-
<script src="../../../assets/javascripts/bundle.
|
|
14463
|
+
<script src="../../../assets/javascripts/bundle.88dd0f4e.min.js"></script>
|
|
13611
14464
|
|
|
13612
14465
|
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
|
|
13613
14466
|
|