Django显示选择值

时间:2019-11-30 22:19:15

标签: django django-forms

我正试图在我的Django表单中添加一个单选字段。表单中的选项来自Request类,其中定义了可能的选择:

   class Request(models.Model):
        RESUME = 'RS'
        NETWORKING = 'NT'
        INTERVIEW = 'IN'
        ADVICE = 'AD'
        JOB_SEARCH = 'JB'
        COVER_LETTER = 'CV'
        LINKEDIN = 'LI'
        PORTFOLIO = 'PR'

       REQUEST_TYPE_CHOICES = [
           (RESUME, 'Resume'),
           (NETWORKING, 'Networking'),
           (INTERVIEW, 'Interview'),
           (ADVICE, 'Career Advice'),
           (JOB_SEARCH, 'Job Search'),
           (COVER_LETTER, 'Cover Letter'),
           (LINKEDIN, 'LinkedIn'),
           (PORTFOLIO, 'Portfolio'),
         ]

       request_type_name = models.CharField(
           max_length=2,
           choices=REQUEST_TYPE_CHOICES,
       )

       def __str__(self):
           return f'{self.request_type_name})'

并以可能的形式调用:

    class StudentRegisterForm(UserCreationForm):
        email = models.EmailField()
        school = forms.CharField(max_length=25)
        requests = forms.ModelMultipleChoiceField(queryset=Request.objects.all(),
                                          widget=forms.CheckboxSelectMultiple,
                                          required=True )

        class Meta(UserCreationForm.Meta):
            model = User
            fields = ["username", "email", "first_name", "last_name", "password1", "password2", "school", "requests"]

However, when the form is displayed it shows abbreviations from REQUEST, not full names. Like this:

我该如何访问全名(恢复,联网等)?

0 个答案:

没有答案