У меня есть проект на django 4.0.1 в котором я использую бд mondodb. Для коннекта с базой я использую движок "djOngo". Соединение с базой работает корректно.
В моем проекте мне необходимо создать модели вложенные в другие модели в models.py Я обратился к официальной документации движка "djOngo" и попытался реализовать пример который потенциально закрывает мою потребность, вот он:
from djongo import models
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
class Meta:
abstract = True
class MetaData(models.Model):
pub_date = models.DateField()
mod_date = models.DateField()
n_pingbacks = models.IntegerField()
rating = models.IntegerField()
class Meta:
abstract = True
class Author(models.Model):
name = models.CharField(max_length=200)
email = models.EmailField()
class Meta:
abstract = True
def __str__(self):
return self.name
class Entry(models.Model):
blog = models.ArrayField(
model_container=Blog,
)
meta_data = models.ArrayField(
model_container=MetaData,
)
headline = models.CharField(max_length=255)
body_text = models.TextField()
authors = models.ArrayField(
model_container=Author,
)
n_comments = models.IntegerField()
def __str__(self):
return self.headline
class Meta:
verbose_name = 'Entry'
verbose_name_plural = 'Entry'
После этого я зарегистрировал класс "Entry" в файле admin.py:
from django.contrib import admin
from .models import Entry
admin.site.register(Entry)
И попробовал заполнить данные через админку. Но при переходе на страницу заполнения я получаю следующую ошибку:
TypeError: Abstract models cannot be instantiated.
Как исправить данную ошибку?