NameError: name 'ChoiceInline' 未定义,inline = [ChoiceInline]
我在写代码的时候遇到了问题,正在看Django官网上的初学者教程。我对编程还很陌生,之前看了一些关于NameError的帖子,要么是关于安装Python的,要么是比我现在的水平复杂得多。
from django.contrib import admin
from polls.models import Choice, Poll
class ChoiceInline (admin.StackedInline):
model = Choice
extra = 3
class PollAdmin(admin.ModelAdmin):
fieldsets = [
(None, {'fields': ['question']}),
('Date Information', {'fields': ['pub_date'], 'classes': ['collapse']}),
]
inlines = [ChoiceInLine]
admin.site.register(Poll, PollAdmin)
NameError: name 'ChoiceInLine' is not defined
现在我知道我并没有在任何地方定义过StackedInline,就像定义一个变量一样。我只是以为它是一个现成的模块,可以从某个地方调用Django的功能。我到底哪里出错了呢?请原谅我这个新手的无知。
1 个回答
3
在Python中,变量名是区分大小写的。
把这个:
inlines = [ChoiceInLine]
换成(注意 L
和 l
是不同的):
inlines = [ChoiceInline]