我正在http://lightbird.net/dbe/todo_list.html处理Django教程。我完成了Django的官方教程。当我尝试同步时
from django.db import models
from django.contrib import admin
class Item(models.Model):
name = models.CharField(max_length=60)
created = models.DateTimeField(auto_now_add=True)
priority = models.IntegerField(default=0)
difficult = models.IntegerField(default=0)
class ItemAdmin(admin.ModelAdmin):
list_display = ["name", "priority", "difficult", "created", "done"]
search_fields = ["name"]
admin.site.register(Item, ItemAdmin)
终端回来时发出错误消息称管理员未定义。我究竟做错了什么?我如何定义管理员?
更新:我现在添加了整个模型文件
答案 0 :(得分:0)
The Django documentation列出了激活管理网站需要执行的多个步骤:
将'django.contrib.admin'添加到您的INSTALLED_APPS设置。
管理员有四个依赖项 - django.contrib.auth,django.contrib.contenttypes,django.contrib.messages和 django.contrib.sessions 即可。如果这些应用程序不在你的 INSTALLED_APPS列表,添加它们。
将django.contrib.messages.context_processors.messages添加到TEMPLATE_CONTEXT_PROCESSORS和MessageMiddleware MIDDLEWARE_CLASSES。 (默认情况下这些都是活动的,所以你只能这样做 如果您手动调整设置,则需要执行此操作。)
确定应在管理界面中编辑哪些应用程序模型。
对于每个模型,可以选择创建一个模拟自定义管理功能和选项的ModelAdmin类 那个特殊的模特。
实例化AdminSite并告诉它每个模型和ModelAdmin类。
- 醇>
将AdminSite实例挂钩到您的URLconf中。列出了一些你必须要做的事情,启用Django的管理站点。
如果您还没有完成前两项,syncdb
可能会抱怨,因为它无法找到管理员应用。