我的应用程序未显示在 Django 管理面板中

My app is not showing in Django admin panel

我对 Django 管理面板有疑问。我有两个应用程序:'users' 和 'advertisements'。应用程序 'users' 在应用程序 'advertisements' 之前安装。这两个应用程序都包含在 'INSTALLED_APPS' 中,但在管理面板中只显示应用程序 'users'。会是什么问题?非常感谢。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'phonenumber_field',
    'users.apps.UsersConfig',
    'advertisements.apps.AdvertisementsConfig',
]

advertisementes/apps.py

from django.apps import AppConfig


class AdvertisementsConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'advertisements'

advertisements/admin.py

from django.contrib import admin
from .models import *


class AdvertisingSpaceAdmin(admin.ModelAdmin):
    list_display = ('id', 'title', 'description', 'slug', 'data', 'user')
    


admin.site.register(AdvertisingSpace, AdvertisingSpaceAdmin)

尝试像这样注册应用程序:

admin.site.register(AdvertisingSpace)
admin.site.register(AdvertisingSpaceAdmin)

如果您不使用信号,例如,将 users.app.UsersConfig 添加到 INSTALLED_APPS 是没有意义的。只需将应用程序名称添加到 INSTALLED_APPS 中,仅作为 'users'。

你正在做的另一点不是一个好的做法是像这样导入你的模型:

from .models import *

您可以做的最好的方法是只导入您想要的模型或全部导入(明确地)以避免任何错误。

您的配置看起来不错。尝试禁用您的广告拦截软件。该应用名为 advertisements,浏览器扩展程序可能将其视为广告并将其屏蔽。