我正在研究Django框架。 现在我正在为下面的用户注册一个类。 我在行号码6上遇到错误。 您能否给予一些帮助?Django View Class:name'self'未定义
1: class JoinForm(forms.Form):
2: MONTH = {
3: 1:('Jan'), 2:('Feb'), 3:('March'), 4:('Apl'), 5:('May'), 6:('Jun'),
4: 7:('July'), 8:('Aug'), 9:('Sep'), 10:('Oct'), 11:('Nov'), 12:('Dec')
5: }
6: YEAR = self.makeYearChoice(self,1940)
7: email = forms.EmailField(label='Email Address', max_length=50)
8: name = forms.CharField(label='Real Name', max_length=20)
9: birth = forms.DateField(label='Birth Date', widget=SelectDateWidget(years=YEAR, months=MONTH))
10: loc = forms.CharField(label='Resident Location', max_length=40)
11: passwd = forms.CharField(label='Password', max_length=16, widget=forms.PasswordInput)
12: def makeYearChoice(self,startYear):
13: YEARS =();
14: thisYear = datetime.now().year
15: for year in range(startYear,thisYear):
16: YEARS.append(year)
17: return YEARS
'self' **不是**在类名称空间中定义的(它通常指的是一个实例,在类定义完成之前您不可能拥有该实例)。鉴于'makeYearChoice'实际上并没有使用任何类/实例属性,为什么不把它作为一个独立的函数呢? – jonrsharpe
我只是想作为一个类的成员函数。我想知道如何工作的成员职能。 – eachone
...什么?在你试图调用'makeYearChoice'的时候,你还没有定义它**! – jonrsharpe