gpt4 book ai didi

python - 为什么没有出现 Django 管理界面?

转载 作者:太空宇宙 更新时间:2023-11-04 07:44:38 26 4
gpt4 key购买 nike

我是 django 的新手。

我正在尝试根据一本关于​​ Django 的书来运行示例。

我已经在我的模型类中添加了“class Admin”,但是,在 django 管理界面中,我只能看到“Users”、“Groups”和“Sites”,我的模型类都没有出现。

没有错误和警告信息,所以我不知道发生了什么,接下来该怎么办。

有什么帮助吗?

from django.db import models

# Create your models here.
class Publisher(models.Model):
name = models.CharField(max_length=30)
address=models.CharField(max_length=50)
city=models.CharField(max_length=60)
state_province=models.CharField(max_length=30)
country=models.CharField(max_length=50)
website=models.URLField()

def __str__(self):
return self.name

class Admin:
pass

class Author(models.Model):
salutation=models.CharField(max_length=10)
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=40)
email=models.EmailField()
headshot=models.ImageField(upload_to='/tmp')

def __str__(self):
return '%s %s' % (self.first_name, self.last_name)

class Admin:
pass

class Book(models.Model):
title=models.CharField(max_length=10)
authors=models.ManyToManyField(Author)
publisher=models.ForeignKey(Publisher)
publication_date = models.DateField()

def __str__(self):
return self.title

最佳答案

您需要做三件事才能通过管理站点编辑您的模型:

  1. 使用代码在您的应用程序目录中创建文件“admin.py”(查看 https://docs.djangoproject.com/en/dev/ref/contrib/admin/#modeladmin-objects):

    from django.contrib import admin
    from your_app.models import Publisher, Author, Book

    admin.site.register(Author)
    admin.site.register(Publisher)
    admin.site.register(Book)
  2. 在您的 urls.py 中添加以下内容(查看 https://docs.djangoproject.com/en/dev/ref/contrib/admin/#hooking-adminsite-instances-into-your-urlconf ):

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

    admin.autodiscover()

    urlpatterns = patterns('',
    (r'^admin/', include(admin.site.urls)),
    # your urls goes here
    )
  3. 确保您的 settings.py 满足以下要求(查看 https://docs.djangoproject.com/en/dev/ref/contrib/admin/#overview ):

    TEMPLATE_CONTEXT_PROCESSORS = (
    'django.contrib.messages.context_processors.messages',
    #other context processors
    )

    MIDDLEWARE_CLASSES = (
    'django.contrib.messages.middleware.MessageMiddleware',
    # other middleware
    )

    INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.messages',
    'django.contrib.sessions',
    # other apps
    )

关于python - 为什么没有出现 Django 管理界面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10731302/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com