django-rest-framework工作流程。
1蛀骇、建立 Models
2、依靠 Serialiers 將數(shù)據(jù)庫取出的數(shù)據(jù) Parse 為 API 的數(shù)據(jù)(可用于返回給客戶端读拆,也可用于瀏覽器顯示)這可以通過urls中的
3擅憔、ViewSet 是一個 views 的集合,根據(jù)客戶端的請求(GET檐晕、POST等)暑诸,返回 Serialiers 處理的數(shù)據(jù),權限 Premissions 也在這一步做處理
4辟灰、ViewSet 可在 Routers 進行注冊个榕,注冊后會顯示在 Api Root 頁上
5、在 urls 里注冊 ViewSet 生成的 view芥喇,指定監(jiān)聽的 url
重點:Serialiers序列化和反序列的實現(xiàn)西采。
錯誤筆記:
django-rest-framework多表查詢:
比如兩個類:
modles中:
class Blog(models.Model):
????????title =?models.CharField(max_length=32)
? ??????body = models.TextField()
class Auth(models.Model):
????????name=?models.CharField(max_length=32)
????????blog = models.ForeignKey(Blog,related_name='blog')
然后在serializers.py中:
classUserSerializer(serializers.HyperlinkedModelSerializer):
????????classMeta:
????????????????model = User
????????????????fields = ('url','username','email','is_staff')
classBlogSerializer(serializers.ModelSerializer):
????????name = UserSerializer()
????????classMeta:
????????????????model = Blog
????????????????depth =1
????????????????fields = ('url','tittle','content','name')
注意的地方是必須在創(chuàng)建modle外鍵的時候一定要編寫related_name='blog'這樣的關鍵字屬性。