Я пытаюсь отобразить представление в Django и отправить его с ajax клиенту.
My view.py:
def searchUser(request):
form = Search(request.POST['name'])
found_profiles = User.objects.prefetch_related('profile').filter(artist_name__icontains=request.POST['name'])[:20]
profiles = {}
i = 0
for user in found_profiles:
profile = Profile(user = user)
profiles.update({i : {'user' : user,'profile' : profile}})
i+=1
print('profile '+str(profiles))
return render(request, 'home_page/search_results.html', {'profiles' : profiles})
Мой search_result. html:
{% for tuple, cont in profiles.items %}
<h2>{{cont.user.email}}</h2>
<h2>{{cont.user.artist_name}}</h2>
<h2>{{cont.profile.bio}}</h2>
{% endfor %}
И, наконец, мой js:
<script type="text/javascript">
$('#submit-search-user').on('click', function(){
var name = $('#id_Name').val();
console.log("Seaching for "+name);
$.ajax({
type: "POST",
url: "/ajax/search/user",
data: {name: name, 'csrfmiddlewaretoken': '{{ csrf_token }}'},
dataType : 'json',
error : function(xhr, errmsg){
console.log(xhr);
console.log(errmsg);
},
success : function(data) {
console.log(data)
$('#result').html(data);
}
});
});
</script>
Js выдает ошибку разбора, часть responseText:
"\n\n\t<h2>test@outlook.fr</h2>\n\t<h2>Azerrt</h2>\n\t<h2></h2>\n\n\t<h2>moowee@yo.de</h2>\n\t<h2>a</h2>\n\t<h2></h2>\n\n"
Почему есть "\ n" и "\ t"? Это причина моей ошибки разбора?