mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-16 04:02:52 -06:00
Fixes #9425: Fix bulk import for object and multi-object custom fields
This commit is contained in:
parent
a0a87fc4c0
commit
998a392bd3
@ -18,6 +18,7 @@
|
|||||||
* [#9358](https://github.com/netbox-community/netbox/issues/9358) - Annotate circuit count for providers list under ASN view
|
* [#9358](https://github.com/netbox-community/netbox/issues/9358) - Annotate circuit count for providers list under ASN view
|
||||||
* [#9387](https://github.com/netbox-community/netbox/issues/9387) - Ensure ActionsColumn `extra_buttons` are always displayed
|
* [#9387](https://github.com/netbox-community/netbox/issues/9387) - Ensure ActionsColumn `extra_buttons` are always displayed
|
||||||
* [#9420](https://github.com/netbox-community/netbox/issues/9420) - Fix custom script class inheritance
|
* [#9420](https://github.com/netbox-community/netbox/issues/9420) - Fix custom script class inheritance
|
||||||
|
* [#9425](https://github.com/netbox-community/netbox/issues/9425) - Fix bulk import for object and multi-object custom fields
|
||||||
* [#9430](https://github.com/netbox-community/netbox/issues/9430) - Fix passing of initial form data for DynamicModelChoiceFields
|
* [#9430](https://github.com/netbox-community/netbox/issues/9430) - Fix passing of initial form data for DynamicModelChoiceFields
|
||||||
|
|
||||||
|
|
||||||
|
@ -27,6 +27,12 @@ class CustomFieldCSVForm(CSVModelForm):
|
|||||||
choices=CustomFieldTypeChoices,
|
choices=CustomFieldTypeChoices,
|
||||||
help_text='Field data type (e.g. text, integer, etc.)'
|
help_text='Field data type (e.g. text, integer, etc.)'
|
||||||
)
|
)
|
||||||
|
object_type = CSVContentTypeField(
|
||||||
|
queryset=ContentType.objects.all(),
|
||||||
|
limit_choices_to=FeatureQuery('custom_fields'),
|
||||||
|
required=False,
|
||||||
|
help_text="Object type (for object or multi-object fields)"
|
||||||
|
)
|
||||||
choices = SimpleArrayField(
|
choices = SimpleArrayField(
|
||||||
base_field=forms.CharField(),
|
base_field=forms.CharField(),
|
||||||
required=False,
|
required=False,
|
||||||
@ -36,8 +42,9 @@ class CustomFieldCSVForm(CSVModelForm):
|
|||||||
class Meta:
|
class Meta:
|
||||||
model = CustomField
|
model = CustomField
|
||||||
fields = (
|
fields = (
|
||||||
'name', 'label', 'type', 'content_types', 'required', 'description', 'weight', 'filter_logic', 'default',
|
'name', 'label', 'type', 'content_types', 'object_type', 'required', 'description', 'weight',
|
||||||
'choices', 'weight', 'validation_minimum', 'validation_maximum', 'validation_regex',
|
'filter_logic', 'default', 'choices', 'weight', 'validation_minimum', 'validation_maximum',
|
||||||
|
'validation_regex',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,10 +39,11 @@ class CustomFieldTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
|||||||
}
|
}
|
||||||
|
|
||||||
cls.csv_data = (
|
cls.csv_data = (
|
||||||
'name,label,type,content_types,weight,filter_logic,choices,validation_minimum,validation_maximum,validation_regex',
|
'name,label,type,content_types,object_type,weight,filter_logic,choices,validation_minimum,validation_maximum,validation_regex',
|
||||||
'field4,Field 4,text,dcim.site,100,exact,,,,[a-z]{3}',
|
'field4,Field 4,text,dcim.site,,100,exact,,,,[a-z]{3}',
|
||||||
'field5,Field 5,integer,dcim.site,100,exact,,1,100,',
|
'field5,Field 5,integer,dcim.site,,100,exact,,1,100,',
|
||||||
'field6,Field 6,select,dcim.site,100,exact,"A,B,C",,,',
|
'field6,Field 6,select,dcim.site,,100,exact,"A,B,C",,,',
|
||||||
|
'field7,Field 7,object,dcim.site,dcim.region,100,exact,,,,',
|
||||||
)
|
)
|
||||||
|
|
||||||
cls.bulk_edit_data = {
|
cls.bulk_edit_data = {
|
||||||
|
Loading…
Reference in New Issue
Block a user