{% extends 'dcim/device/base.html' %} {% load helpers %} {% load plugins %} {% load render_table from django_tables2 %} {% block content %}
Device
Location {% include 'dcim/inc/location_hierarchy.html' with location=object.location %}
Rack {% if object.rack and object.rack.rack_group %} {{ object.rack.rack_group|hyperlinked_object }} / {% endif %} {{ object.rack|hyperlinked_object }}
Position {% if object.parent_bay %} {% with object.parent_bay.device as parent %} {{ parent|hyperlinked_object }} / {{ object.parent_bay }} {% if parent.position %} (U{{ parent.position }} / {{ parent.get_face_display }}) {% endif %} {% endwith %} {% elif object.rack and object.position %} U{{ object.position }} / {{ object.get_face_display }} {% elif object.rack and object.device_type.u_height %} Not racked {% else %} {% endif %}
Tenant {% if object.tenant and object.tenant.tenant_group %} {{ object.tenant.tenant_group|hyperlinked_object }} / {% endif %} {{ object.tenant|hyperlinked_object }}
Device Family {{ object.device_type.device_family|hyperlinked_object }}
Device Type {{ object.device_type.display }} ({{ object.device_type.u_height }}U)
Serial Number {{ object.serial|placeholder }} {% if object.serial %} {% endif %}
Asset Tag {{ object.asset_tag|placeholder }}
{% if vc_members %}
Virtual Chassis
{% for vc_member in vc_members %} {% endfor %}
Device Position Master Priority
{{ vc_member|hyperlinked_object }} {{ vc_member.vc_position }} {% if object.virtual_chassis.master == vc_member %}{% endif %} {{ vc_member.vc_priority|default:"" }}
{% endif %}
Management
{% if object.controller_managed_device_group %} {% endif %} {% if object.cluster %} {% endif %} {% include 'dcim/inc/detail_softwareversion_softwareimagefile_rows.html' %}
Role {{ object.role | hyperlinked_object_with_color }}
Platform {{ object.platform|hyperlinked_object }}
Status {{ object.status| hyperlinked_object_with_color }}
Primary IPv4 {% if object.primary_ip4 %} {{ object.primary_ip4|hyperlinked_object|add_html_id:"ipv4" }} ({{ object.primary_ip4.parent.namespace|hyperlinked_object }}) {% if object.primary_ip4.nat_inside %} (NAT for {{ object.primary_ip4.nat_inside.address.ip }}) {% elif object.primary_ip4.nat_outside_list.exists %}
NAT:
    {% for nat in object.primary_ip4.nat_outside_list.all %}
  • {{ nat|hyperlinked_object }}
  • {% endfor %}
{% endif %}
{% else %} {% endif %}
Primary IPv6 {% if object.primary_ip6 %} {{ object.primary_ip6|hyperlinked_object|add_html_id:"ipv6" }} ({{ object.primary_ip6.parent.namespace|hyperlinked_object }}) {% if object.primary_ip6.nat_inside %} (NAT for {{ object.primary_ip6.nat_inside.address.ip }}) {% elif object.primary_ip6.nat_outside_list.exists %}
NAT:
    {% for nat in object.primary_ip6.nat_outside_list.all %}
  • {{ nat|hyperlinked_object }}
  • {% endfor %}
{% endif %}
{% else %} {% endif %}
Secrets Group {{ object.secrets_group|hyperlinked_object }}
Device Redundancy Group {% if object.device_redundancy_group %} {{ object.device_redundancy_group|hyperlinked_object }} Priority: {{ object.device_redundancy_group_priority }} {% else %} {% endif %}
Controller Managed Device Group {{ object.controller_managed_device_group|hyperlinked_object }}
Managed by Controller {{ object.controller_managed_device_group.controller|hyperlinked_object }}
Cluster {% if object.cluster.group %} {{ object.cluster.group|hyperlinked_object }} / {% endif %} {{ object.cluster|hyperlinked_object }}
{% include 'inc/custom_fields/panel.html' with custom_fields=object.get_custom_field_groupings_basic computed_fields=object.get_computed_fields_grouping_basic computed_fields_advanced_ui=False %} {% include 'inc/relationships/panel_override.html' with relationships_fields_override=object.get_relationships_data_basic_fields %} {% include 'extras/inc/tags_panel.html' with tags=object.tags.all url='dcim:device_list' %}
Comments
{% if object.comments %} {{ object.comments|render_markdown }} {% else %} None {% endif %}
{% plugin_left_page object %}
{% if object.powerports.exists and object.poweroutlets.exists %}
Power Utilization
{% for powerport in object.powerports.all %} {% with utilization=powerport.get_power_draw powerfeed=powerport.connected_endpoint %} {% if powerfeed.available_power %} {% else %} {% endif %} {% for leg in utilization.legs %} {% with phase_available=powerfeed.available_power|divide:3 %} {% endwith %} {% endfor %} {% endwith %} {% endfor %}
Input Outlets Allocated Available Utilization
{{ powerport }} {{ utilization.outlet_count }} {{ utilization.allocated }}VA{{ powerfeed.available_power }}VA {% utilization_graph_raw_data utilization.allocated powerfeed.available_power %}
Leg {{ leg.name }} {{ leg.outlet_count }} {{ leg.allocated }} {{ powerfeed.available_power|divide:3 }}VA{% utilization_graph_raw_data leg.allocated phase_available %}
{% endif %} {% include 'panel_table.html' with table=vrf_table heading="Assigned VRFs" %}
Services
{% if services %} {% for service in services %} {% include 'ipam/inc/service.html' %} {% endfor %}
{% else %}
None
{% endif %} {% if perms.ipam.add_service %} {% endif %}
Images
{% include 'inc/image_attachments.html' with images=object.images.all %} {% if perms.extras.add_imageattachment %} {% endif %}
{% plugin_right_page object %}
{% plugin_full_width_page object %}
{% include 'inc/object_details_advanced_panel.html' %}
{% block advanced_content_right_page %}{% endblock advanced_content_right_page %}
{% block advanced_content_full_width_page %}{% endblock advanced_content_full_width_page %}
{% if object.is_contact_associable_model %}
{% csrf_token %}
Contact Associations
{% render_table associated_contacts_table 'inc/table.html' %}
{% with request.path|add:"?tab=contacts"|urlencode as return_url %} {% endwith %}
{% endif %} {% if object.is_dynamic_group_associable_model and perms.extras.view_dynamicgroup %}
Dynamic group membership is cached for performance reasons, therefore this table may not always be up-to-date.
You can refresh the membership of any specific group by navigating to it from the list below or from the Dynamic Groups list view.
You can also refresh the membership of all groups by running the Refresh Dynamic Group Caches job.
{% csrf_token %}
Dynamic Groups
{% render_table associated_dynamic_groups_table 'inc/table.html' %}
{% endif %} {% if object.is_metadata_associable_model and perms.extras.view_objectmetadata %}
{% csrf_token %}
Object Metadata
{% render_table associated_object_metadata_table 'inc/table.html' %}
{% endif %}
{% endblock content %}