Найти - Пользователи
Полная версия: Помогите нарисовать форму
Начало » Django » Помогите нарисовать форму
1
W7NTED
Здравствуйте, я зеленый джун, есть модель
 class Planet(models.Model):
    planet = models.CharField(max_length=25)
class Candidate(models.Model):
    name_c = models.CharField(max_length=25)
    planet = models.ForeignKey(Planet, on_delete=models.CASCADE)
    age = models.IntegerField(max_length=3)
    email = models.EmailField()
    status_padavan = models.BooleanField(default=False)
    created = models.DateTimeField(auto_now_add=True)
хочу нарисовать форму для заполнения, с выпадающим списком planet из модели, через forms.Form
наваял примерно следущее:
forms.py
 class CandidateForm(forms.Form):
    name = forms.CharField(label='Твое имя', max_length=25)
    planet = forms.ModelChoiceField(queryset=Planet.objects.all())
    age = forms.IntegerField(max_length=3, widget=forms.TextInput())
    email = forms.EmailField(max_length=25)
но для уменьшения кода, хочу через ModelForm, но не знаю как прикрутить (queryset=Planet.objects.all()) ибо нахожу такие примеры
class CandidateForm(ModelForm):
class Meta:
model = Candidate
fields=['name_c', 'planet', 'email', 'age']
Подскажите как правильно писать такой код. Спасибо
m0nte-cr1st0
 def __init__(self, *args, **kwargs):
    super().__init__(*args, **kwargs)
    self.fields['planet'].queryset = Planet.objects.all()
W7NTED
m0nte-cr1st0
Спасибо СЭНСЕЙ! Дай БОГ тебе здоровья!)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB