DatabaseError в /admin/shop/item/add/ [закрыто]

Я начинаю проект с django и mongodb (с djongo eninge). Когда я создаю пользователя в моем шаблоне (html), я могу создать элемент, обновить, удалить, даже с суперпользователем. Но когда я захожу в админку (с суперпользователем) и создаю элемент для проверки, (элемент с хостом, именем, ценой) и появляется эта ошибка. Эта ошибка все еще возникает при обновлении, но я все еще могу удалить элемент. Эта ошибка возникает только при создании, обновлении элемента в adminstrations.

Пожалуйста, найдите нижеприведенные коды для справки и помощи!

Имя: djongo
Версия: 1.3.6

Название: Django Версия: 4.1.13

Название: pymongo Версия: 3.12.1

здесь фотография ошибки
еще одна фотография

журнал отладки

DatabaseError at /admin/shop/item/add/
No exception message supplied
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/shop/item/add/
Django Version: 4.1.13
Exception Type: DatabaseError
Exception Location: C:\Users\MSI\Desktop\A 
Project_Django_thanhduc\my_venv\Lib\site packages\djongo\cursor.py, line 81, in fetchone
Raised during: django.contrib.admin.options.add_view
Python Executable: C:\Users\MSI\Desktop\A 
Project_Django_thanhduc\my_venv\Scripts\python.exe
Python Version: 3.11.9
Python Path:
['C:\\Users\\MSI\\Desktop\\A Project_Django_thanhduc\\my_app', 
'C:\\Program ' 'Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\\python311.zip', 'C:\\Program ' 'Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\\DLLs', 'C:\\Program ' 'Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\\Lib', 'C:\\Program ' 'Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0', 'C:\\Users\\MSI\\Desktop\\A Project_Django_thanhduc\\my_venv', 'C:\\Users\\MSI\\Desktop\\A ' 'Project_Django_thanhduc\\my_venv\\Lib\\site-packages']

Время сервера: Tue, 21 May 2024 10:16:30 +0000

Это моя база данных setting.py

DATABASES = {
    'default': {
        'ENGINE': 'djongo',
        'NAME': 'onlineshop',
        'ENFORCE_SCHEMA': False,
        'CLIENT': {
            'host': 'localhost',
            'port': 27017,
            'authSource': 'admin',  # Đảm bảo rằng authSource là đúng
        },
        'LOGGING': {
            'version': 1,
            'loggers': {
                'djongo': {
                    'level': 'DEBUG',
                    'propagate': False,
                }
            },
        },
    }
}

Model.py :

from django.db import models
from django.contrib.auth.models import User

class Topic(models.Model):
    name = models.CharField(max_length=200)

    def __str__(self):
        return self.name

class Item(models.Model):
    host = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
    name = models.CharField(max_length=100)
    price = models.DecimalField(max_digits=20, decimal_places=2)
    image = models.ImageField(upload_to='items/', null=True, blank=True)
    description = models.TextField(null=True, blank=True)
    updated = models.DateTimeField(auto_now=True)
    created = models.DateTimeField(auto_now_add=True)

    class Meta:
        ordering = ['-created']

    def __str__(self):
        return f"{self.name} - {self.host.username if self.host else 'No Host'}"
    
Вернуться на верх