0

我需要在模板中获取数据。

我有ajax请求:

$(".retailer-list-img").mouseover(function () {
    var $this = $(this);
    var category_id = $this.attr('id');
    $.ajax({
        'url': '/shop/getfeatured/',
        'method': 'POST',
        'data': {'category_id': category_id,},
        'success': function(response){
             console.log(response)
         }
    });
});

视图.py

def MerchantGetfeaturedView(request):
    featured = Merchant.objects.filter(
        is_catalog_active=1,
        is_active=1,
        category_id=request.REQUEST.get('category_id'),
        date_deleted__isnull=True
    ).select_related('_image')

    featured = serializers.serialize('json', featured)

    return HttpResponse(featured, content_type="application/json")

但是有没有相关的对象“图像”?如何序列化相关模型?谢谢。

4

1 回答 1

0

首先,您必须转换您的对象。

result = { 'is_catalog_active': featured['is_catalog_active']
           'is_active': 1,
           'category_id': int(request.REQUEST.get('category_id')),
           'image_id' : _image.id,
           'image_name': _image.name 
         }

您可以让 PyC​​harm 帮助您自动完成相关的模型字段。如果你有正确的工具,随机猜测有时是不好的。或者,检查 django 文档以进行进一步调查。

其次,$.ajax() 函数没有失败回调,所以模式不完整。实际上,用户必须知道前端反馈。例如,哪种类型的错误。

于 2016-05-19T13:11:00.320 回答