Django Filter error select form invalid data
hi У меня проблема с фильтрацией поля select. Я знаю, что проблема кроется в форме, но я не понимаю, что мне нужно изменить, чтобы это работало. Кто-нибудь может дать мне решение или рассказать, как я могу протестировать форму с помощью печати, потому что я не понимаю, как ее протестировать.
form
class EserciziForm(forms.ModelForm):
class Meta:
model = models.DatiEsercizi
exclude = ['gruppo_single']
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['dati_esercizio'].queryset = models.DatiEsercizi.objects.none()
if 'gruppo' in self.data:
try:
gruppo_id = int(self.data.get('gruppo_single'))
self.fields['dati_esercizio'].queryset = DatiEsercizi.objects.filter(gruppo_single = gruppo_id)
except (ValueError, TypeError):
pass
просмотров
def caricamento_esercizi(request):
gruppo_id = request.GET.get('gruppo')
gruppo_name = DatiGruppi.objects.get(dati_gruppo = gruppo_id)
esercizi_add = DatiEsercizi.objects.filter(gruppo_single = gruppo_name)
context = {'esercizi_add': esercizi_add}
return render(request, 'filtro_esercizi.html', context)
file html
$("#id_gruppo-dati_gruppo").change(function(){
var gruppoId = $(this).val();
var url = $("#creazione_scheda").attr("data-esercizi-url");
$.ajax({
url: url,
data:{
'gruppo': gruppoId
},
success: function(data){
$(".esercizi select").html(data);
}
});
});
модель
class Gruppi(models.Model):
nome_gruppo = models.CharField(max_length=100)
def __str__(self):
return self.nome_gruppo
class Esercizi(models.Model):
nome_esercizio = models.CharField(max_length=100)
gruppo = models.ForeignKey(
Gruppi,
on_delete = models.CASCADE,
related_name = 'gruppo'
)