Невозможно использовать метод POST с Django 4 Rest Framework

У меня проблема с новым приложением django 4, которое не обрабатывает или не разрешает метод POST. Я обходил это в Django версии 3, добавляя в Postman API Tester косую черту "/" в конце url, например http://127.0.0.1:8000/api/didipay/ вместо http://127.0.0.1:8000/api/didipay . Но теперь в моем Django 4 API я дополнил url слэшем, но метод POST все еще не обрабатывает данные. Он выдает мне "500 internal server error" и я не понимаю, откуда он берется. Метод GET скорее выдает пустой массив, что нормально, потому что я еще не вставлял никаких данных в базу данных. Я использую venv, Django 4 Rest framework, serializer, viewSet и вот мои модели и конфигурации API urls:

//Serialize.py
from rest_framework.decorators import permission_classes
from didipay_app.models import Didipay_app
from rest_framework import viewsets, permissions
from .serializers import Didipay_appSerializer

class Didipay_appViewSet(viewsets.ModelViewSet):
    queryset = Didipay_app.objects.all()
    permission_classes = [
        permissions.AllowAny
    ]
    serializer_class = Didipay_appSerializer

// urls.py папки проекта

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('', include('didipay_app.urls')),
]

// urls.py папки App

from rest_framework import routers, urlpatterns
from .api import Didipay_appViewSet

router = routers.DefaultRouter()
router.register('api/didipay', Didipay_appViewSet, 'didipay')

urlpatterns = router.urls

На веб-странице приложения написано:

HTTP 200 OK Разрешить: GET, HEAD, OPTIONS Content-Type: application/json Vary: Accept

{ "api/didipay": "http://127.0.0.1:8000/api/didipay/" }

А POST вообще отсутствует в разрешенных методах, и я не понимаю почему, так как я предоставил все разрешения в файле Serialize.py (пока нет системы аутентификации). Буду очень благодарен за помощь в решении данного вопроса. Заранее благодарю.

Я исправил это, изменив fields = '__ all __' в Model на все атрибуты таблицы в fields = ('id', 'first_name', 'last_name', 'phone', 'email', 'country', 'currency', 'status', 'payingType') потому что перезагрузка компьютера привела к тому, что консоль выдала ошибку следующего содержания

TypeError: Опция fields должна быть списком или кортежем или "__ все __"

, который не отображался до перезапуска системы. Я также подозреваю, что я установил fields = '__ all __' вместо fields = '__ all __' (есть проблема с использованием __ в редакторе stackoverflow, потому что он скрыт, когда используется как в реальном редакторе кода, но общая идея в том, что не должно быть пробелов вокруг "all" при использовании "__".

).
Вернуться на верх