Introduce ObjectAttribute for displaying read-only instance attributes on forms

This commit is contained in:
Jeremy Stretch
2024-03-13 10:15:34 -04:00
parent 33b9ebb201
commit 8f03a19b5f
12 changed files with 40 additions and 78 deletions

View File

@@ -4,6 +4,7 @@ from django.utils.translation import gettext_lazy as _
from netbox.forms import NetBoxModelForm
from tenancy.models import *
from utilities.forms.fields import CommentField, DynamicModelChoiceField, SlugField
from utilities.forms.rendering import ObjectAttribute
__all__ = (
'ContactAssignmentForm',
@@ -140,6 +141,10 @@ class ContactAssignmentForm(NetBoxModelForm):
queryset=ContactRole.objects.all()
)
fieldsets = (
(None, (ObjectAttribute('object'), 'group', 'contact', 'role', 'priority', 'tags')),
)
class Meta:
model = ContactAssignment
fields = (

View File

@@ -369,7 +369,6 @@ class ContactAssignmentListView(generic.ObjectListView):
class ContactAssignmentEditView(generic.ObjectEditView):
queryset = ContactAssignment.objects.all()
form = forms.ContactAssignmentForm
template_name = 'tenancy/contactassignment_edit.html'
def alter_object(self, instance, request, args, kwargs):
if not instance.pk: