Jelajahi Sumber

#10033 changes from code review

Arthur 3 tahun lalu
induk
melakukan
439cf1a308
2 mengubah file dengan 3 tambahan dan 1 penghapusan
  1. 2 0
      netbox/ipam/models/l2vpn.py
  2. 1 1
      netbox/templates/ipam/l2vpn.html

+ 2 - 0
netbox/ipam/models/l2vpn.py

@@ -3,6 +3,7 @@ from django.contrib.contenttypes.models import ContentType
 from django.core.exceptions import ValidationError
 from django.db import models
 from django.urls import reverse
+from django.utils.functional import cached_property
 
 from ipam.choices import L2VPNTypeChoices
 from ipam.constants import L2VPN_ASSIGNMENT_MODELS
@@ -67,6 +68,7 @@ class L2VPN(NetBoxModel):
     def get_absolute_url(self):
         return reverse('ipam:l2vpn', args=[self.pk])
 
+    @cached_property
     def can_add_termination(self):
         if self.type in L2VPNTypeChoices.P2P and self.terminations.count() >= 2:
             return False

+ 1 - 1
netbox/templates/ipam/l2vpn.html

@@ -59,7 +59,7 @@
       </div>
       {% if perms.ipam.add_l2vpntermination %}
         <div class="card-footer text-end noprint">
-          <a href="{% url 'ipam:l2vpntermination_add' %}?l2vpn={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm{% if not object.can_add_termination %} disabled{% endif %}"{% if not object.can_add_termination %} aria-disabled="true"{% endif %}>
+          <a href="{% url 'ipam:l2vpntermination_add' %}?l2vpn={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm{% if not object.can_add_termination %} disabled" aria-disabled="true{% endif %}">
             <i class="mdi mdi-plus-thick" aria-hidden="true"></i> Add a Termination
           </a>
         </div>