繁体   English   中英

django rest 框架显示 model 实例

[英]django rest framework display model instances

我正在尝试显示所有 model 实例。

主项目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,因此您的循环将不会运行,这使得 function 隐式返回None

此外,您需要放弃循环并使您的 return 语句为:

return Response({'projects': projects})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM