2014-03-12 38 views
1

使用django rest框架(請參閱http://www.django-rest-framework.org/)我想創建一個不基於模型但基於數據庫中定義的api。 假設我想創建一個有一些字段的api,轉換這些字段,用轉換的字段調用另一個(extrenal api),並在我的API中返回這些(或轉換後的)結果。 api應該建立在數據庫中的定義之上,api是用這個定義的id在slug中調用的。Djangorestframework動態api和序列化器

我想在djangorestframework打造這一點,因爲這有一些巧妙的事情(比如可瀏覽的API,它是非常方便的進行測試,同時開發)

我想我需要開始與通用的API視圖,並覆蓋了get serialzer。 get序列化器可以使用slug中定義的id。

itselve應該完全建立動態的串行...

不知道如何開始的這最後一部分? (只要我有一些工作,我會後的代碼)

我看到這一點:http://www.django-rest-framework.org/api-guide/serializers.html#dynamically-modifying-fields 但是,這開始於一個serialzer,比修改它(或實際上只隱藏已defineds場)。所以我的方式應該更加靈活。

回答

2

只需在DRF中擴展默認的Serializer並覆蓋get_fields即可。

+0

謝謝,我會試試這個......你可能會得到這個問題的答案學分! –

+0

這就是我喜歡DRF的原因!結合init(設置定義的id)和get_fields,我設法做到了我想要的。 –