Django使用序列化器从帖子查询

时间:2018-06-01 18:38:33

标签: django django-rest-framework django-views

这是我想要做的。

  • POST到API
  • 创建序列化程序,以便只将某些字段传递给查询
  • 创建仅使用序列化字段的视图
  • 创建使用通过序列化程序传递的数据的查询对象

POST 可以运行并获取对视图的请求

{
    "city": "Denver"
    "state": "CO"
    "Foo": "foo2"
}

序列化程序错误

当有人发帖时,我不希望稍后将任何旧变量发送到查询,因此我需要通过仅具有" city"的序列化程序来清理请求。和"州"并允许" foo"要传递给查询。

注意 EventsSerializer适用于整个模型,只能在视图返回时使用。

class EventsSerializer(??????????):
    class Meta:
        model = Events
        fields = '__all__'

class EventQuerySerializer(serializers.BaseSerializer):
    class Meta:
        fields = ('city', 'state')

查看应该使用城市和州(或其他已接受的字段)并查询事件

class QueryEvents(APIView):
    @staticmethod
    def post(request):
        serializer = EventQuerySerializer(data=request.data)
        if serializer.is_valid():
            events = Events.objects.get(?????????)
            return Response(EventsSerializer(events).data)

0 个答案:

没有答案