Djangorestframework动态api和序列化器

时间:2014-03-12 08:03:38

标签: django-rest-framework

使用django rest框架(参见http://www.django-rest-framework.org/)我想创建一个不基于模型而是基于数据库中定义的api。 假设我想创建一个包含一些字段的api,转换这些字段,用转换后的字段调用另一个字段(extrenal api)并在我的api中返回那些(或者也转换过的)结果。 api应该建立在数据库中的定义之上,api在slug中使用此定义的id调用。

我想在djangorestframework中构建它,因为它有一些整洁的东西(比如可浏览的api,在开发时非常方便进行测试)

我想我需要从通用api视图开始并覆盖get serialzer。 get序列化程序可以使用slug中定义的id。

序列化器itselve应该完全构建动态...

知道如何从最后一部分开始吗? (只要我有一些工作,我会发布代码)

我看到了这个:http://www.django-rest-framework.org/api-guide/serializers.html#dynamically-modifying-fields 但是这从串行器开始而不是修改它(或者实际上只隐藏已经定义的字段)。所以我的应该更灵活。

1 个答案:

答案 0 :(得分:2)

只需在DRF中扩展默认Serializer并覆盖get_fields即可。