Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python错误:name';管理员';没有定义_Python_Django_Django Models_Django Admin_Django Urls - Fatal编程技术网

Python错误:name';管理员';没有定义

Python错误:name';管理员';没有定义,python,django,django-models,django-admin,django-urls,Python,Django,Django Models,Django Admin,Django Urls,我第一次在Django中创建Python应用程序。我知道我必须取消对URL.py中的管理工具的注释,我已经这样做了。我还添加了autodiscover。每次我尝试向“管理”面板添加新功能时,都会出现以下错误: “名称错误:未定义名称“admin” 以下是我在模型中用于添加到管理面板的代码: class ChoiceInline(admin.StackedInline): model = Choice extra = 3 class PollAdmin(admin.Mod

我第一次在Django中创建Python应用程序。我知道我必须取消对URL.py中的管理工具的注释,我已经这样做了。我还添加了
autodiscover
。每次我尝试向“管理”面板添加新功能时,都会出现以下错误:

“名称错误:未定义名称“admin”

以下是我在模型中用于添加到管理面板的代码:

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]
下面是我正在使用的python终端中的代码

admin.site.register(Poll, PollAdmin)
下面是my urls.py中的代码:

from django.conf.urls import patterns, include, url

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'iFriends.views.home', name='home'),
    # url(r'^iFriends/', include('iFriends.foo.urls')),

    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(admin.site.urls)),
    )
有人知道为什么找不到管理员名吗

编辑

这是我的整个模型文件:

from django.db import models

class Poll(models.Model):
    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')
    def __unicode__(self):
        return self.question
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)

    class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField()
    def __unicode__(self):
        return self.choice_text


#COMMENTED OUT UNTIL I FIX THE ADMIN NAME
from django.config import admin

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]

#ADD THIS TO THE MAIN PYTHON FUNCTION
admin.site.register(Poll, PollAdmin)

我怀疑您在定义
ModelAdmin
类的模型文件中没有来自django.contrib import admin的
类选项行(admin.StackedInline):

您应该放置管理员代码(在#注释掉之后的所有内容,直到我修复管理员名称)从django.config导入admin到admin.py

应该是从django.contrib导入admin

**url.py**
文件的顶部,添加以下代码

from django.contrib import admin
admin.autodiscover()
因此,该特定块应该如下所示



好了,经过一个漫长而痛苦的探索来解决这个愚蠢的问题,我终于找到了答案!另一个Django程序员遇到了同样的问题,并发现:

在ChoiceInLine的父级(您将在教程中看到“admin.stackedLine”)中,StackedLine中的L不应大写。。。就这么简单。。。非常感谢凯伦·特蕾西


我像这样更改我的URL.py。。。这应该是基本格式

from django.conf.urls import  include, url
from django.contrib import admin

admin.autodiscover()
urlpatterns = [
     url(r'^admin/', include(admin.site.urls)),
    ]

对我来说,解决这个问题的方法是在
admin.py
的开头添加这个:

from django.contrib import admin

您安装的应用程序中是否有“django.contrib.admin”?是的。我已经使用相同的方法在管理面板中添加了一个“Polls”部分。现在它不起作用了这能回答问题吗
StackedLine
在问题中似乎正确地大写了。
from django.contrib import admin