在我的 models.py 中,我有以下课程:
class AvailabilityTypes():
STUDYING = 'STUDYING'
WORKING = 'WORKING'
SEARCHING = 'SEARCHING'
FREELANCER = 'FREELANCER'
types = (
(STUDYING, 'Estudando'),
(WORKING, 'Trabalhando'),
(SEARCHING, 'Procurando por emprego'),
(FREELANCER, 'Freelancer')
)
def get_types(self):
return self.types.all()
我想在 Django 表单中显示这些选项。在我的 forms.py 文件中,我有以下一段代码:
from django import forms
from .models import AvailabilityTypes
[...]
availability = forms.CharField(
widget=forms.ChoiceField(
choices=(AvailabilityTypes.types)
)
)
但我得到了错误TypeError: 'DeferredAttribute' object is not iterable。我究竟做错了什么?另外,如果我尝试使用:
availability = forms.CharField(
widget=forms.ChoiceField(
choices=(AvailabilityTypes.get_types())
)
)
我收到错误 TypeError: get_types() missing 1 required positional argument: 'self'.
我是 Django 和 Python 的新手,我可以使用一些灯。谢谢你。
相关分类