简体   繁体   中英

Django how i can return Queryset to AJAX response?

Have a QuerySet object

userorder = UserOrder.objects.filter(
        user_id=user_id, is_closed=0)

response_data['uo'] = serializers.serialize('json', [ userorder, ])

But have Error

Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django\core\handlers\exception.py", line 39, in inner
response = get_response(request)
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "E:\PhytonProgects\natarelochke\ordering\views.py", line 35, in ajax_check
response_data = cfunc.check_cart(request, response_data)
File "E:\PhytonProgects\natarelochke\ordering\cart_functions.py", line 96, in check_cart
response_data['uo'] = serializers.serialize('json', [ userorder, ])
File "C:\Python27\lib\site-packages\django\core\serializers\__init__.py", line 129, in serialize
s.serialize(queryset, **options)
File "C:\Python27\lib\site-packages\django\core\serializers\base.py", line 83, in serialize
concrete_model = obj._meta.concrete_model
AttributeError: 'QuerySet' object has no attribute '_meta'

[07/Feb/2017 05:13:02] "POST /ajax_response/ HTTP/1.1" 500 15833

Wanna get json object for work with him in client side

我假设queryset.values()是您所需要的( 注意它已经是一个列表 ):

response_data['uo'] = serializers.serialize('json', userorder.values())

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM