Предоставление удаленных данных JSON для Typeahead / Bloodhound с помощью Django / Python

Я пытаюсь повторить функциональность этого удаленного примера Typeahead, но не могу понять, как предоставить данные так, как этого хочет Typeahead / Bloodhound, и для чего нужны datumTokenizer или queryTokenizer.

В Python / Django views.py у меня есть:

nouns = ['apple', 'banana', 'pear']
return JsonResponse({'results': noun_results})

достижение сайта как:

{"results": ["apple", "banana", "pear"]}

Для "королей" пример возвращает :

[{"year": "1949","value":"All the Kings Men","tokens":["All","the","Kings","Men"]}]

Нужно ли возвращать его в таком формате? Если да, то как? Как мы можем сделать простую репликацию примера?

Выяснили: для практического использования return HttpResponse(nouns), или return JsonResponse(nouns, safe=False).

Если вы беспокоитесь о безопасности, отправьте его в виде диктанта:

noun_dicts = [{'suggestion':x} for x in nouns]
return JsonResponse({'results':noun_dicts})

А затем разобрать дикту в JS.

Вернуться на верх