Django - tabularinline в форме в шаблоне

У меня есть приложение для голосования (вопрос и выбор). В админке я могу использовать TabularInline, чтобы видеть для каждого вопроса выбор фидлов (по умолчанию 3 поля) и в админке я могу установить название вопроса, постер и выбор для этого вопроса и я могу создать вопрос с выбором и из шаблона я могу голосовать и т.д. Но я не знаю как сделать форму с точным механизмом для использования в шаблоне, где можно задать название, постер и самое главное выбор для этого вопроса с механизмом добавления другого выбора как в админке .

В форме я пытаюсь сделать следующее

class ChoiceInline(admin.TabularInline):
    model = Choice
    extra = 3

class creareSondajForm(ModelForm):
    class Meta:
        model = Question
        fields = [ 'question_text', 'poster' ]
        inlines = [ChoiceInline]

но в шаблоне он показывает только вход для названия вопроса и плакат, а не вход, где нужно установить выбор. Пожалуйста, помогите мне. Спасибо!

Ниже мои настройки.

models.py

class Question(models.Model):
    question_text = models.CharField(max_length=200, verbose_name='Intrebare')
    poster = models.ImageField ( upload_to ='sondaj/', default='sondaj/poster_sondaj_pl.jpg', verbose_name='Poster (120px * 96px)')
    pub_date = models.DateTimeField('publicat la:')

    def __str__(self):
        return self.question_text
    #pentru a redimensiona rezolutia posterului incarcat
    def save(self, *args, **kawrgs):
        super().save(*args, **kawrgs)

        img = Image.open(self.poster.path)

        if img.height > 96 or img.width > 120:
            output_size = (96, 120)
            img.thumbnail(output_size)
            img.save(self.poster.path)


    class Meta:
        verbose_name = 'Intrebari sondaj'
        verbose_name_plural = 'Intrebari sondaj'

class Choice(models.Model):
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200, verbose_name='')
    votes = models.IntegerField(default=0)
    def __str__(self):
        return self.choice_text

    class Meta:
        verbose_name = 'Variante raspuns'
        verbose_name_plural = 'Variante raspuns'

admin.py

class ChoiceInline(admin.TabularInline):
    model = Choice
    extra = 3

class QuestionAdmin(admin.ModelAdmin):
    fieldsets = [(None, {'fields' : ['question_text', 'poster']}),
    ('Data publicarii', {'fields' : ['pub_date'], 'classes': ['collapse']}),]
    inlines = [ChoiceInline]

admin.site.register(Question, QuestionAdmin)

views.py

def creareSondaj(request):
    form = creareSondajForm()
   
    if request.method == 'POST':
        form = creareSondajForm(request.POST)
        if form.is_valid():
 
            form.save()
            messages.success(request, "Sondaj creat cu succes")
            return redirect('utilizatori:cont-trainer')
        else:
            messages.error(request, 'Eroare creare sondaj ')
            return redirect('utilizatori:cont-trainer')

    context = { 'form' : form}
    return render(request, 'sondaj/creare_sondaj.html', context)

form.py (но не работает, не показывает варианты выбора)

class ChoiceInline(admin.TabularInline):
    model = Choice
    extra = 3

class creareSondajForm(ModelForm):
    class Meta:
        model = Question
        fields = [ 'question_text', 'poster' ]
        inlines = [ChoiceInline]
Вернуться на верх