6

在 Django admin 中,可以设置 raw_id_fields 以便拥有搜索小部件而不是选择框。当外键表很大时,这非常简洁,可以节省大量数据库查询。

Django Rest Framework 可浏览视图中的等价物是什么?

4

3 回答 3

6

Django Rest Framework 3 不再支持序列化器字段上的小部件属性。但要让您的可浏览 API 甚至可用,请尝试更改style要使用的属性'base_template': 'input.html',如下例所示:

class CustomerAddressSerializer(serializers.ModelSerializer):
    customer = serializers.IntegerField(source='customer_id' style={'base_template': 'input.html', 'placeholder': "Customer ID"})
    class Meta:
        model = models.CustomerAddress
        fields = ('id', 'customer', 'street', 'zip', 'city')

这样,您select带有数千个外键的巨大标签options将变为简单文本input。有关更多信息,请查看http://www.django-rest-framework.org/topics/browsable-api/#handling-choicefield-with-large-numbers-of-items上的文档

于 2016-01-24T13:39:27.393 回答
1

目前没有什么可以支持这一点。我很确定拉请求会受到欢迎。

于 2013-09-05T07:41:43.413 回答
0

支持 Carlton 所说的话,尽管在尝试实施之前在票证中讨论是值得的。

或者,您可能想看看使用自动完成小部件......

http://www.django-rest-framework.org/topics/browsable-api/#autocomplete

于 2013-09-05T19:37:24.867 回答