Мое приложение не отображается в панели администратора Django
У меня проблема с панелью администратора 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 *
Лучший способ, который вы можете сделать, это импортировать только ту модель, которая вам нужна, или все модели (ИСКЛЮЧИТЕЛЬНО), чтобы избежать любой ошибки.