Я хочу сохранить выбранную радиокнопку в базе данных? Как я могу сделать это в django?

models.py

from django.db import models
from django.utils.translation import gettext_lazy as _
# Create your models here.
# from django.utils.encoding import smart_unicode
from enum import Enum
from django.contrib.auth.models import AbstractUser

from django import forms

class CommentForm(forms.Form):
    name = forms.CharField()
    comment = forms.CharField(widget=forms.Textarea)

class Username(AbstractUser):
    firstName = models.CharField(max_length=200, null=True)
    lastName = models.CharField(max_length=200, null=True)
    email = models.EmailField(unique=True, default=None, null=True)
    password = models.CharField(max_length=32)

    REQUIRED_FEILDS = []
    def __str__(self):
        return self.username

class Option(models.TextChoices):
        OPTION1 = 'OPTION1', _('OPTION1')
        OPTION2 = 'OPTION2', _('OPTION2')
        OPTION3 = 'OPTION3', _('OPTION3')
        OPTION4 = 'OPTION4', _('OPTION4')



class Question(models.Model):
    # id = models.AutoField(primary_key=True)
    question=models.CharField(max_length=600)
    option1=models.CharField(max_length=200, default=None)
    option2=models.CharField(max_length=200, default=None)
    option3=models.CharField(max_length=200, default=None)
    option4=models.CharField(max_length=200, default=None)    
    difficulty=models.PositiveIntegerField()
    exam=models.BooleanField()
    key=models.CharField(max_length=100)
    correct_answer = models.CharField(max_length=7,choices=Option.choices,default=None,)

    def __str__(self):
        return str(self.id)

class Answer(models.Model):
    username=models.ForeignKey(Username,max_length=200, null=True,on_delete=models.CASCADE)
    question_id = models.ForeignKey(Question, on_delete=models.CASCADE)
    answer = models.CharField(
        max_length=7,
        choices=Option.choices,
        default=None,
    )
    surety=models.PositiveIntegerField( null=True)
    difficulty=models.PositiveIntegerField( null=True)
   

    def __str__(self):
        return self.answer


        
       

views.py

try.html

Я приложил необходимые представления, модели и html файлы для справки. Также, На html странице есть радиокнопки внутри формы, где нажатие кнопки Submit должно сохранить все выбранные радиокнопки в базу данных. Есть ли способ сделать это? Любое решение будет очень полезным.

в файле views.py вы можете использовать:

# If not using required attribute in HTML
seleted_option = request.POST.get('option')

# If using required it is suggested to use
seleted_option = request.POST['option']
Вернуться на верх