首页 > 解决方案 > 为什么'django.contrib.admin.sites'没有属性'register'?

问题描述

我在应用程序中制作模型,但是当我在 admin.py 文件中调用此函数“admin.sites.register(modal_class_name)”时。我有一个错误

这是我的模态课

    from django.db import models

# Create your models here.
class Topic(models.Model):
    top_name=models.CharField(max_length=256,unique=True)

    def __str__(self):
        return self.top_name


class Webpage(models.Model):
    topic=models.ForeignKey(Topic,Topic)
    name=models.CharField(max_length=256,unique=True)
    url=models.URLField(unique=True)

    def __str__(self):
        return self.name

class AccessRecord(models.Model):
    name=models.ForeignKey(Webpage,Webpage)
    date=models.DateField()

    def __str__(self):
        return str(self.date)

这是我的 admin.py 文件代码

from django.contrib import admin

# Register your models here.
from first_app.models import AccessRecord, Topic, Webpage

admin.sites.register(AccessRecord)
admin.sites.register(Topic)
admin.sites.register(Webpage)

当我运行项目时出现错误,这是 错误快照

标签: pythondjango

解决方案


您的代码中有错字。它的站点而不是站点。

管理员.py

from django.contrib import admin

# Register your models here.
from first_app.models import AccessRecord, Topic, Webpage

admin.site.register(AccessRecord)
admin.site.register(Topic)
admin.site.register(Webpage)

推荐阅读