14
14
DynamicModelChoiceField ,
15
15
DynamicModelMultipleChoiceField ,
16
16
)
17
- from virtualization .models import VirtualMachine , VMInterface
17
+ from virtualization .models import (
18
+ Cluster ,
19
+ ClusterGroup ,
20
+ ClusterType ,
21
+ VirtualMachine ,
22
+ VMInterface ,
23
+ )
18
24
19
25
from ..models import (
20
26
AccessList ,
@@ -59,6 +65,7 @@ class AccessListForm(NetBoxModelForm):
59
65
Requires a device, a name, a type, and a default_action.
60
66
"""
61
67
68
+ # Device selector
62
69
region = DynamicModelChoiceField (
63
70
queryset = Region .objects .all (),
64
71
required = False ,
@@ -85,21 +92,49 @@ class AccessListForm(NetBoxModelForm):
85
92
"site_id" : "$site" ,
86
93
},
87
94
)
95
+
96
+ # Virtual Chassis selector
88
97
virtual_chassis = DynamicModelChoiceField (
89
98
queryset = VirtualChassis .objects .all (),
90
99
required = False ,
91
100
label = "Virtual Chassis" ,
92
101
)
102
+
103
+ # Virtual Machine selector
104
+ cluster_type = DynamicModelChoiceField (
105
+ queryset = ClusterType .objects .all (),
106
+ required = False ,
107
+ )
108
+
109
+ cluster_group = DynamicModelChoiceField (
110
+ queryset = ClusterGroup .objects .all (),
111
+ required = False ,
112
+ query_params = {
113
+ "type_id" : "$cluster_type" ,
114
+ },
115
+ )
116
+
117
+ cluster = DynamicModelChoiceField (
118
+ queryset = Cluster .objects .all (),
119
+ required = False ,
120
+ query_params = {
121
+ "type_id" : "$cluster_type" ,
122
+ "group_id" : "$cluster_group" ,
123
+ },
124
+ )
125
+
93
126
virtual_machine = DynamicModelChoiceField (
94
127
queryset = VirtualMachine .objects .all (),
95
128
required = False ,
96
129
label = "Virtual Machine" ,
130
+ query_params = {
131
+ "cluster_type_id" : "$cluster_type" ,
132
+ "cluster_group_id" : "$cluster_group" ,
133
+ "cluster_id" : "$cluster" ,
134
+ },
97
135
)
136
+
98
137
comments = CommentField ()
99
- tags = DynamicModelMultipleChoiceField (
100
- queryset = Tag .objects .all (),
101
- required = False ,
102
- )
103
138
104
139
class Meta :
105
140
model = AccessList
0 commit comments