Roo*_*123 40 python django django-rest-framework
我已经在django中创建了一个应用程序,我知道django rest框架用于API.但是当我开始在他们的网站上阅读关于django rest框架的时候.API 指南中的每个东西(如请求,响应,视图等)关于它的.talks优于django(请求,回复,观点等)
我不明白这些API是否会取代我现有的django模型,视图等,或者我如何在现有的django代码中以不同方式使用它们
我对django非常熟悉,但是在花了一些时间后才能理解django rest框架究竟是什么.(我知道它用于API)我也确实需要一个API.我的应用程序能够发送数据到没有API的服务器,所以在什么情况下我需要一个API
J. *_*ers 24
Django Rest Framework使您可以轻松地将Django Server用作REST API.
REST代表" 重表象小号大老牛逼转让(BOT)"和API代表一个 pplication p在AGC 我覆盖整个院落.
你可以使用常规的Django构建一个restful api,但它会非常非常.DRF让一切变得简单.为了比较,这里是使用常规Django的简单GET-view,以及使用Django Rest Framework的一个:
定期:
from django.core.serializers import serialize
from django.http import HttpResponse
class SerializedListView(View):
def get(self, request, *args, **kwargs):
qs = MyObj.objects.all()
json_data = serialize("json", qs, fields=('my_field', 'my_other_field'))
return HttpResponse(json_data, content_type='application/json')
Run Code Online (Sandbox Code Playgroud)
随着DRF,这变为:
from rest_framework import generics
class MyObjListCreateAPIView(generics.ListCreateAPIView):
permission_classes = [permissions.IsAuthenticatedOrReadOnly]
serializer_class = MyObjSerializer
Run Code Online (Sandbox Code Playgroud)
请注意,使用DRF,您可以轻松拥有列表,创建视图以及身份验证.
aal*_*333 16
是否需要api取决于您要做什么。例如,如果您想从移动设备和Web应用程序访问Django模型中的所有内容,则需要使用DRF。
为什么呢 考虑以下情况:您正在开发一个用户可以登录的iOS应用,并且您想使用Django作为后端。如果您还希望拥有一个网站,供他们用来更改其应用程序的个人资料信息(例如,更新其电子邮件地址或上传图片),则需要一种与网站和网站共享Django模型中的信息的方法。iOS设备。如何才能做到这一点?通过简单地告诉用户要访问的URL,使用户能够创建/读取/更新/删除数据。现在,如果您想从模型中访问信息,则可以从多个设备上进行访问,因为任何设备都可以访问URL。
但是,如果您只是构建一个简单的webapp /网页并将其全部保存在一个地方,则可以直接使用Django。
旁注:一种流行的观点是,您应尽量将前端与后端分开。在这种情况下,如果您想使用诸如React,Angular或Vue之类的前端开发框架,即使您只想要一个简单的Web应用程序/ Web页面,尝试将所有这些资源都包含在Django模板页面中也会很麻烦。在这种情况下,您将使用DRF设置后端,然后使用axios之类的工具从前端访问URL。在这种情况下,您的前端很可能托管在诸如Node之类的东西上。
同样,您决定使用的内容实际上仅取决于您想要从应用程序/网站中获取的内容以及您对每种工具的舒适程度。
小智 13
DRF 的基本目的是提供 API。API 是应用程序中的接触点。想象一个项目,您有一个 Django 向导,您团队中的某个人是 JavaScript 专家,并且您想开发移动应用程序。JavaScript 专家谈论 Web 元素和线程,Django 专家谈论模板和 ORM,现在呢?API 就是您的答案。让 Django wiz 提供 API 和 JSON,让 JavaScript wiz 发挥他的前端魔法。我能想到的最简单的答案。
归档时间: |
|
查看次数: |
11886 次 |
最近记录: |