Я создаю TodoApp с использованием Django3.2 и React js и получаю ошибку: cannot import views
Я создаю Todo App, используя Django 3.2 с python 3.6.8 и react js.
Я установил djangorestframework и Django-cors-headers. Однако, я не могу получить App views. Я также не смог выполнить миграцию.
При попытке запустить сервер я получил следующую ошибку:
Вот мои взгляды:
from django.shortcuts import render
from django.http import JsonResponse
from rest_framework.decorators import todoappApi_view
from rest_framework.response import Response
from .serializers import TaskSerializer
from .models import Task
# Create your views here.
#The function todoappApiOverview will allow React js to get responses from the API
@todoappApi_view(['GET'])
def todoappApiOverview(request):
todoappApi_urls = {
'List':'/task-list/',
'Detail View':'/task-detail/<str:pk>/',
'Create':'/task-create/',
'Update':'/task-update/<str:pk>/',
'Delete':'/task-delete/<str:pk>/',
}
return Response(todoappApi_urls)
#React js will get the data responses using the taskListfollowing functions
@todoappApi_view(['GET'])
def taskList(request):
tasks = Task.objects.all().order_by('-id')
serializer = TaskSerializer(tasks, many=True)
return Response(serializer.data)
@todoappApi_view(['GET'])
def taskDetail(request, pk):
tasks = Task.objects.get(id=pk)
serializer = TaskSerializer(tasks, many=False)
return Response(serializer.data)
@todoappApi_view(['POST'])
def taskCreate(request):
serializer = TaskSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
@todoappApi_view(['POST'])
def taskUpdate(request, pk):
task = Task.objects.get(id=pk)
serializer = TaskSerializer(instance=task, data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
@todoappApi_view(['DELETE'])
def taskDelete(request, pk):
task = Task.objects.get(id=pk)
task.delete()
return Response('Item succsesfully delete!')
Вот ссылки на приложения:
from django.urls import path
from . import views
urlpatterns = [
path('', views.todoappApiOverview, name="todoappApi-overview"),
path('task-list/', views.taskList, name="task-list"),
path('task-detail/<str:pk>/', views.taskDetail, name="task-detail"),
path('task-create/', views.taskCreate, name="task-create"),
path('task-update/<str:pk>/', views.taskUpdate, name="task-update"),
path('task-delete/<str:pk>/', views.taskDelete, name="task-delete"),
]
Вот настройки приложения:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'todoappApi.apps.TodoappApiConfig',
'rest_framework',
'corsheaders',
]