django rest framework 显示模型实例
django rest framework display model instances
我正在尝试显示所有模型实例。
主要项目urls.py
:
from .views import api_root, endpoint_info, test
urlpatterns = [
path('admin/', admin.site.urls),
path('test', test)
]
主要项目views.py
:
from project.models import Project
from rest_framework.decorators import api_view, renderer_classes
from rest_framework.renderers import JSONRenderer
@api_view(['GET'])
@renderer_classes((JSONRenderer,))
def test(request):
projects = Project.objects.all()
for project in projects:
return Response({'client_name': project.client_name})
# return Response({'client_name': 'string_value_random'}) <-- tried returning string too
我收到这个错误:
AssertionError at /test
Expected a `Response`, `HttpResponse` or `HttpStreamingResponse` to be returned from the view, but received a `<class 'NoneType'>`
我也试过返回 return Response({'client_name': 'string_value_random'})
但仍然得到同样的错误。
如何显示记录?
Project.objects.all()
导致一个空的 QuerySet,所以你的循环不会得到 运行,这使得函数隐式 return None
.
此外,您需要放弃循环并使您的 return 语句成为:
return Response({'projects': projects})
我正在尝试显示所有模型实例。
主要项目urls.py
:
from .views import api_root, endpoint_info, test
urlpatterns = [
path('admin/', admin.site.urls),
path('test', test)
]
主要项目views.py
:
from project.models import Project
from rest_framework.decorators import api_view, renderer_classes
from rest_framework.renderers import JSONRenderer
@api_view(['GET'])
@renderer_classes((JSONRenderer,))
def test(request):
projects = Project.objects.all()
for project in projects:
return Response({'client_name': project.client_name})
# return Response({'client_name': 'string_value_random'}) <-- tried returning string too
我收到这个错误:
AssertionError at /test
Expected a `Response`, `HttpResponse` or `HttpStreamingResponse` to be returned from the view, but received a `<class 'NoneType'>`
我也试过返回 return Response({'client_name': 'string_value_random'})
但仍然得到同样的错误。
如何显示记录?
Project.objects.all()
导致一个空的 QuerySet,所以你的循环不会得到 运行,这使得函数隐式 return None
.
此外,您需要放弃循环并使您的 return 语句成为:
return Response({'projects': projects})