Ссылка на внешний ключ в запросе FormModel на все экземпляры модели
Я создаю систему регистрации для классов программирования, в какой-то момент я хочу, чтобы люди выбирали, в какую партию они хотят записаться, модель Batch
имеет внешний ключ к модели Program
model.py
class Program(models.Model):
id = models.AutoField(primary_key=True)
name_english = models.CharField(max_length=64, null=False)
name_arabic = models.CharField(max_length=64, null = False)
def __str__(self):
return(self.name_arabic)
class Batch(models.Model):
id = models.AutoField(primary_key=True)
program = models.ForeignKey(Program, on_delete=models.CASCADE)
number = models.SmallIntegerField()
starting_at = models.DateField()
def __str__(self):
return (f"{self.program}")
Затем я создаю набор форм из Batch
модели
form.py
class new_program_formset(ModelForm):
class Meta:
model=Batch
fields = "__all__"
new_program_formset = modelformset_factory(model=Batch, fields="__all__")
Затем я передаю его через представление в шаблон
views.py
return render(request, "registration/program_registration.html", {
"forms": new_program_formset(),
"progress": 40,
"quote": quote,
})
HTML шаблон
<div class="form-outline text-center">
{% for form in forms %}
<label class="form-label">{{ form.program }}</label>
<div>
<p>{{form.starting_at}}</p>
</div>
{% endfor %}
</div>
Проблема в том, что когда я обращаюсь к form.program
, он запрашивает все экземпляры в модели программы
Я хочу получить одну программу, связанную с выбранной Batch
.