Commit b4f83374 authored by ibuler's avatar ibuler

[Bugfix] 资产批量便捷

parent 1fbf4ac0
...@@ -107,6 +107,15 @@ class AssetBulkUpdateForm(forms.ModelForm): ...@@ -107,6 +107,15 @@ class AssetBulkUpdateForm(forms.ModelForm):
port = forms.IntegerField( port = forms.IntegerField(
label=_('Port'), required=False, min_value=1, max_value=65535, label=_('Port'), required=False, min_value=1, max_value=65535,
) )
cluster = forms.ModelChoiceField(
required=False, label=_("Cluster"), queryset=Cluster.objects.all(),
widget=forms.Select(
attrs={
'class': 'select2',
'data-placeholder': _('Select cluster')
}
)
)
class Meta: class Meta:
model = Asset model = Asset
...@@ -117,6 +126,9 @@ class AssetBulkUpdateForm(forms.ModelForm): ...@@ -117,6 +126,9 @@ class AssetBulkUpdateForm(forms.ModelForm):
'groups': forms.SelectMultiple( 'groups': forms.SelectMultiple(
attrs={'class': 'select2', 'data-placeholder': _('Select asset groups')} attrs={'class': 'select2', 'data-placeholder': _('Select asset groups')}
), ),
'labels': forms.SelectMultiple(
attrs={'class': 'select2', 'data-placeholder': _('Select lables')}
),
} }
def save(self, commit=True): def save(self, commit=True):
...@@ -129,11 +141,15 @@ class AssetBulkUpdateForm(forms.ModelForm): ...@@ -129,11 +141,15 @@ class AssetBulkUpdateForm(forms.ModelForm):
if k in changed_fields} if k in changed_fields}
assets = cleaned_data.pop('assets') assets = cleaned_data.pop('assets')
groups = cleaned_data.pop('groups', []) groups = cleaned_data.pop('groups', [])
labels = cleaned_data.pop('labels', [])
assets = Asset.objects.filter(id__in=[asset.id for asset in assets]) assets = Asset.objects.filter(id__in=[asset.id for asset in assets])
assets.update(**cleaned_data) assets.update(**cleaned_data)
if groups: if groups:
for asset in assets: for asset in assets:
asset.groups.set(groups) asset.groups.set(groups)
if labels:
for asset in assets:
asset.labels.set(labels)
return assets return assets
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment