2014-02-21 2 views
0

У меня возникла странная проблема. Я использую Django 1.6. Я получаю ответ json из представления при вызове функции jquery ajax. Но «данные» не имеют свойства длины!Невозможно использовать json-ответ в Django

$.ajax({ 
     url: request_url, 
     dataType: 'json', 
     success: function(data){ 
     console.log(data); 
     console.log(data.length); //gives an error 

В console.log печатает

Object {2: "XX", 5: "YY"} 

Мой Посмотреть

def get_items(request, id): 

item_list = Items.objects.filter(cat = id) 
result = {} 
items_dict = {} 
for item in item_list: 
    items_dict[item .id] = item.name 

return HttpResponse(json.dumps(items_dict), content_type="application/json") 

Почему это происходит?

ответ

1

Объекты не имеют .length свойство в JavaScript. Для получения длины используйте следующее:

Object.keys(<your-object-here>).length 
Смежные вопросы