У меня возникли проблемы при попытке сохранить много-много полей в форме, я получил ошибку "объект не повторяем" в одном поле, которое имеет отношение ко многим-многим, я не уверен, что это виджет автозаполнения modelselect2, но он Также не позволяйте мне выбрать более 1 значение (в админке работает нормально)
forms.py
class Urbaniz_Form(forms.ModelForm):
roles = forms.ModelChoiceField(
queryset=RolesSII.objects.all(),
widget=autocomplete.ModelSelect2(url='roles-autocomplete')
)
class Meta():
model = SubdUrb_Solicitud
exclude = []
widgets = {
'roles': autocomplete.ModelSelect2(),
}
def limpiar(self):
cd = self.cleaned_data
views.py
@login_required
def crear_urb(request):
p_form = Urbaniz_Form()
if request.method == 'POST':
p_form = Urbaniz_Form(request.POST, request.FILES)
if p_form.is_valid():
#VALIDACION DE INFO limpiar() - is_cleaned
p_form.limpiar()
p_form.save()
p_form.save_m2m()
messages.success(request, f'Registro de Urbanización creado con éxito')
return dom_home(request)
else:
return render(request, 'b_dom/crear_urb.html', {'form':p_form,
'error':p_form.errors})
else:
return render(request,'b_dom/crear_urb.html', {'form':p_form})
class RolAutocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = RolesSII.objects.all()
if self.q:
qs = qs.filter(rol__istartswith=self.q)
return qs
Спасибо !!