Как избавиться от ошибки django.db.utils.OperationalError: no such table?

Я разрабатываю это приложение на Django, где я не могу сгенерировать миграции ни при каких обстоятельствах. Я пробовал другие посты на SO, я провел часы на ChatGPT, но прогресса нет. После определения единой модели, представлений и урлов, мой проект постоянно возвращает django.db.utils.OperationalError: no such table: vini_rest_plotdata в коде, который я приведу ниже.

Может ли кто-нибудь понять, что здесь происходит? Я пытался создать совершенно новый проект, но обнаружил ту же ошибку, поэтому я не верю, что это ошибка в настройках, а что-то, что у меня есть в коде, который я повторяю, но просто не могу увидеть.

views.py:

from django.shortcuts import render
from django.http import JsonResponse
from .models import plotData
from .dash_app import app
import json

# Create your views here.

def import_json(request):

    if request.method == 'POST':
        data = json.loads(request.body)
        title = data.get('title')
        description = data.get('description')
        url = data.get('url')
        json_data = data.get('json_data')

        plot_data = plotData.objects.create(
                title = title,
                description = description,
                url = url,
                json_data = json_data,
            )
        
        return JsonResponse({'status': 'success', 'id': plot_data.id})
    
    else:
        return JsonResponse({'status': 'error',
                             'message': 'Only POST requests are allowed'})

models.py:

class plotData(models.Model):
    title = models.CharField(max_length = 100, primary_key=True, unique=True)
    description = models.TextField()
    url = models.URLField()
    json_data =  models.JSONField()

urls.py

from django.urls import path, include
from rest_framework import permissions
from drf_yasg.views import get_schema_view
from drf_yasg import openapi
from django.contrib import admin
from django.urls import path
from vini_rest import views
from vini_rest.dash_app import app as dash_app

schema_view = get_schema_view(
    openapi.Info(
        title = "Vini API",
        default_version = "v0.01",
        description = "API para o site teste de consulta de dados sobre" 
                      "vinícolas do Brasil pela Embrapa",
        terms_of_service = "",
        contact = openapi.Contact(email = "egrojkayode@gmail.com"),
        license = openapi.License(name = "MIT License")
    ),
    public = True,
    permission_classes = (permissions.AllowAny,),
)

urlpatterns = [
    path('admin/', admin.site.urls),
    path('swagger/', schema_view.with_ui("swagger", cache_timeout = 0), name="schema-swagger-ui"),
    path('redoc/', schema_view.with_ui('redoc', cache_timeout = 0), name = 'schema_redoc'),
    path('django_plotly_dash/', include('django_plotly_dash.urls')),

    path('import_json/', views.import_json, name='import_json'),
    path('dashboard_view/', views.dashboard_view, name='dashboard_view'),
    path('dash_app/', dash_app.server.routes),
]

setting.py | admin.py | apps.py


import dash
from dash import dcc
from dash import html
import pandas as pd
from dash.dependencies import Input, Output
from .models import plotData

json_data = plotData.objects.all()
dfs = []
for item in json_data:
    df = pd.DataFrame(item.json_data)
    dfs.append(df)

app = dash.Dash(__name__)

И я также предоставлю ChatGPT, который я использую для поиска ошибки, просто чтобы не выкладывать трассировку в этом посте: https://chat.openai.com/share/6828a482-a02f-4d0c-b343-190def29ce1a

Я просмотрел все возможности команд терминала на:

  • python manage.py migrate appname
  • python manage.py makemigrations

Я также перешел к удалению предыдущих миграций (мне это удалось, когда я тестировал сервер в первый раз, но стер миграции без новой модели, и теперь мы здесь).

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