فهرست منبع

Use TreeNodeChoiceField for MPTT objects

Jeremy Stretch 6 سال پیش
والد
کامیت
8bd1fad7d0
1فایلهای تغییر یافته به همراه6 افزوده شده و 0 حذف شده
  1. 6 0
      netbox/extras/scripts.py

+ 6 - 0
netbox/extras/scripts.py

@@ -10,6 +10,8 @@ from django import forms
 from django.conf import settings
 from django.core.validators import RegexValidator
 from django.db import transaction
+from mptt.forms import TreeNodeChoiceField
+from mptt.models import MPTTModel
 
 from ipam.formfields import IPFormField
 from utilities.exceptions import AbortTransaction
@@ -124,6 +126,10 @@ class ObjectVar(ScriptVariable):
         # Queryset for field choices
         self.field_attrs['queryset'] = queryset
 
+        # Update form field for MPTT (nested) objects
+        if issubclass(queryset.model, MPTTModel):
+            self.form_field = TreeNodeChoiceField
+
 
 class IPNetworkVar(ScriptVariable):
     """