django форм и моделей muxamedovr - PullRequest
0 голосов
/ 24 апреля 2020

У меня такая ситуация у меня 3 модели Profil, Stimul_slov, Ответ, участник должен go ввести свой логин и пароль к основной части сайта, там он должен ответить на несколько вопросов, вопросы хранятся по модели Stimul_slov ответы должен быть сохранен в модели Ответ. Я новичок в решении этой проблемы. Пожалуйста, скажите мне, как решить эту проблему. Как я могу сделать форму для этой задачи за ранее спасибо и простите меня, если мой уровень английского models.py

from django.contrib.auth.models import User

class Profil(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    fullname = models.CharField(max_length=100, blank=True)
    age = models.DateField(blank=True)
    specialite = models.CharField(max_length=100,blank=True)
    language = models.CharField(max_length=100,blank=True)
    def __str__(self):
        return self.fullname




class Stimul_slov(models.Model):
    stimulus = models.CharField(max_length=200, blank=True)
    def __str__(self):
        return "%s" % ( self.stimulus)

class Otvet(models.Model):
    answer = models.CharField(max_length=200, blank=True)
    user = models.ForeignKey(Profil, on_delete=models.CASCADE)
    stimul = models.ForeignKey(Stimul_slov, on_delete=models.CASCADE)
    def __str__(self):
        return  "%s: %s ----> %s" % (self.user ,self.stimul, self.answer)

form.py

from django import forms
from .models import Profil, Otvet
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm





class ExtendedUserCreationForm(UserCreationForm):


    email = forms.EmailField(required=True)



    class Meta:
        model = User
        fields = ('username', 'email', 'password1', 'password2'  )

    def save(self, commit=True):
        user = super().save(commit==False)
        user.email = self.cleaned_data['email']


        if commit:
            user.save()
        return user

class UserProfil(forms.ModelForm):
    class Meta:
        model = Profil
        fields = ('fullname', 'age', 'specialite', 'language')


class Home(forms.ModelForm):
    class Meta:
        model = Otvet
        fields = ('answer')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...