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'}"