Django Путь к сбою ресурсов?
Когда я пытаюсь выполнить запрос GET на одной из моих конечных точек API, он не может найти конечную точку.
Файл urls.py выглядит следующим образом
from django.urls import path, include
from django.contrib import admin
from api.resources import NoteResource
note_resource = NoteResource()
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include(note_resource.urls)),
]
api.resources выглядит так
from tastypie.resources import ModelResource
from api.models import Note
class NoteResource(ModelResource):
class Meta:
queryset = Note.objects.all()
resource_name = 'note'
Есть идеи, почему это происходит?
Решение: похоже, что http://127.0.0.1:8000/api/note/
работает нормально.. с чего бы это?
1 ответ
Вы также должны иметь одну запись в URL note_resource.urls
только для /api
запрос. Что-то похожее
path('api/', APIClass)
,
Но вам никогда не понадобится эта конечная точка. Так как, /api
не представляет какой-либо фактический запрос в вашей системе.
Я скорее предлагаю иметь следующие конечные точки:
path('api/notes/',include(note_resource.urls))
в твоем главном urls.py
,
Так что вы можете иметь несколько URL в основном urls.py
файл, представляющий каждое приложение.
path('api/<APP_NAME>(s)/',include(<APP_NAME>.urls))
И вы будете управлять другими конечными точками в вашем app urls.py
файл:
# Создать новую заметку
path(
'create/',
NoteCreate.as_view()
),