我想爲我的新項目使用Django REST框架,但我不確定是否可以高效地完成它。我希望能夠在我的API中輕鬆集成經典的Django應用程序。但是我不知道如何繼續讓他們尊重REST框架哲學。我是否必須重寫所有視圖或是否有更合適的解決方案?如何在Django REST框架中使用經典的Django應用程序?
回答
「正常」Django視圖(通常)返回HTML頁面。
Django-Rest-Framework視圖(通常)返回JSON。
我假設你正在尋找更像是單頁面應用程序的東西。
在這種情況下,您將擁有一個主視圖,它將成爲HTML頁面的主體。這將從「標準」Django視圖返回HTML(可能包含一些JavaScript)。
頁面加載後,JavaScript代碼將向DRF視圖發出請求。因此,當您與頁面交互時,JavaScript將請求Json,並基於JSON的內容更新(不重新加載)頁面。
這有道理嗎?
是的,我正在尋找一個單頁的應用程序。我用Javascript和Json得到了重點。但我的問題仍然存在(抱歉,如果它不清楚):我想在我的API中使用django消息(https://github.com/arneb/django-messages/tree/master/django_messages)。這個應用程序不是爲DRF設計的,因爲它提供了經典視圖和模板標籤。我是否必須將所有視圖重新編碼爲DRF視圖才能將Json提供給我的應用程序? – Kowalsy
如果不知道你想達到什麼的更多細節,很難說(但我懷疑你會需要重寫所有內容)。您似乎將其視爲一種或另一種情況,您可以輕鬆地從同一應用程序中同時處理普通HTML視圖以及DRF json。 –
很明顯,模板標籤在json中不會有任何用處。但我想他們對於包含JavaScript的頁面的HTML部分有意義。 –
- 1. 在Django框架中使用openshift Rest Api Python應用程序
- 2. 使用Django的REST框架
- 3. 如何使用Django REST框架的ListCreateAPIView
- 4. Django REST框架 - CurrentUserDefault使用
- 5. 使用Django Rest框架
- 6. 如何在Django REST框架認證中使用Graphene GraphQL框架
- 7. Django Rest框架 - 如何使用update_or_create
- 8. Django REST框架+ Django REST Swagger
- 9. 在django rest框架中調用序列化程序
- 10. 用Django Rest框架登錄
- 11. Django/Django Rest框架 - 禁用CSRF
- 12. Django的REST框架
- 13. Django的REST框架
- 14. 用Django Rest框架序列化
- 15. 可能使用Django的REST框架
- 16. 過濾使用viewsets Django的REST框架
- 17. 使用Django的REST框架正確
- 18. Django REST框架在APIView中使用不同的序列化器
- 19. 如何使行動記錄在Django Django的REST框架
- 20. 如何獲得在Django的REST框架
- 21. 如何在Django的REST框架
- 22. django rest框架中的IntegrityError
- 23. 在Django的REST框架
- 24. 在Django的REST框架
- 25. 在Django的REST框架
- 26. 如何在Django框架工作中使用本地rest api?
- 27. django rest框架中的用戶註冊
- 28. Django REST框架中的用戶認證
- 29. 用於查看在Django的REST框架
- 30. Django REST框架HyperlinkedModelSerializer
將DRF視爲您應用程序當前的'views.py'和模板的機器友好型替代方案。粗略地說,視圖將模型渲染爲HTML。 DRF將模型渲染爲JSON,XML和其他機器友好的格式。 DRF不會取代您的常規視圖。 –
看看這個:http://www.django-rest-framework.org/如果你打算使用REST API,那麼是的,你可能想擺脫你的觀點,或者至少重新設計它們,但這取決於他們的樣子。無需發佈代碼片段,回答起來太寬泛 – fodma1
如果您想保持傳統觀點,請使用'tastypie'。 – xyres