Django在田野上找不到我的选择区

2024-05-12 22:41:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我上课了:

from django import forms
from .models import Donator

class DonatorForm(forms.ModelForm):
      BLOOD_CHOICES = ( ('A-','A-'),      ('A+','A+'),      ('B-','B-'),      ('B+','B+'),      ('AB-','AB-'),    ('AB+','AB+'),    ('O-','O-'),      ('O+','O+'), ('TODOS','TODOS') )
      SITUATION_CHOICES = ( ('Sem Problemas','Sem Problemas'), ('Problemas Momentâneos','Problemas Momentâneos'), ('Problemas Graves', 'Problemas Graves') )

      class Meta:
            model = Donator
            fields = ('name', 'age', 'email','phone', forms.ChoiceField(choices = SITUATION_CHOICES, required=True, label = "Situacao do Doador"), 'bloodType', 'observation')  

我收到:

NameError: name 'SITUATION_CHOICES' is not defined

我怎样才能正确地提到我的字段选择以在表单上显示下拉列表?在

另外,它已经在model上设置。没办法从模型本身得到吗?在

^{pr2}$

Tags: fromimportmodelabformstodosclasschoices
1条回答
网友
1楼 · 发布于 2024-05-12 22:41:16

你用错了你的元字段。您的选择必须在模型类之外。在

BLOOD_CHOICES = (
            ('A-','A-'),      ('A+','A+'),      ('B-','B-'),      ('B+','B+'),      ('AB-','AB-'),    ('AB+','AB+'),    ('O-','O-'),      ('O+','O+'), ('TODOS','TODOS')
      )
class Donator(models.Model):
      blood_type = models.CharField(choices=STATUS_CHOICES, default=1)
      class Meta:
            ordering = ('name',)

这样就可以了

^{pr2}$

相关问题 更多 >