Модель не отображается в панели администратора django
У меня не отображается рекламный модуль в админпанели django. Вот код модели
from django.db import models
class Advertisement(models.Model):
title = models.CharField(max_length=1000, db_index=True)
description = models.CharField(max_length=1000, default='', verbose_name='description')
creates_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
price = models.FloatField(default=0, verbose_name="price")
views_count = models.IntegerField(default=1, verbose_name="views count")
status = models.ForeignKey('AdvertisementStatus', default=None, null=True, on_delete=models.CASCADE,
related_name='advertisements')
def __str__(self):
return self.title
class Meta:
db_table = 'advertisements'
ordering = ['title']
class AdvertisementStatus(models.Model):
name = models.CharField(max_length=100)
admins.py /
from django.contrib import admin
from .models import Advertisement
admin.site.register(Advertisement)
Я просто брал бесплатный курс с YouTube. В других моих проектах такого не было. Здесь я зарегистрировал приложение, получив имя в INSTALLED_APPS. Затем я выполнил создание миграций и сами миграции. Затем я попытался использовать решение проблемы здесь, ничего не помогло. В поиске Google я тоже не нашел решения
admins.py
Имя файла admin.py
, а не . Да, это немного сбивает с толку, поскольку большинство имен модулей в Django имеют форму множественного числа. Вероятно, причина в том, что вы определяете (одного) администратора для определенных моделей.admins.py
Альтернативно, вы можете заставить Django импортировать это с помощью AppConfig
:
# app_name/apps.py
from django.apps import AppConfig
class AppConfig(AppConfig):
def ready(self):
# if admin definitions are not defined in admin.py
import app_name.admins # noqa
Может быть несколько причин, по которым модель не отображается в панели администратора Django. Некоторые возможные причины следующие:
Check if you have the correct name in the INSTALLED_APPS setting in your settings.py file. The name should match the name of your Django app.
Make sure that the Django app is included in the URL configuration.
Check if the admin.py file is located in the right location in your Django app and that it's imported correctly.
Try restarting the development server after making any changes to the code.
Если проблема все еще сохраняется, пожалуйста, поделитесь полной трассировкой ошибки, если таковая имеется, или любой дополнительной информацией, которая поможет диагностировать проблему.