У меня Ajax звонок на событие on('click',)
. Данные, переданные с моего HTML, равны value= '{{y.id }} {{ y.id }}'
. Ajax передает его моему views.py
на python стороне сервера как str
.
Есть ли способ сделать его прямым списком или словарем? Или я должен извлечь его и преобразовать в мой views.py
?
Мой html:
{% if user.is_authenticated %}
<form class="add_btn" method='post'>{% csrf_token %}
<button class='added btn' value='{{x.id }}{{ y.id }}' ><i class=' fas fa-save'></i></button>
{% endif %}
Мой Ajax:
$(".added").on('click', function(event) {
event.preventDefault();
var prefered = $(this).val();
var url = '/finder/add/';
$.ajax({
url: url,
type: "POST",
data:{
'prefered': prefered,
'csrfmiddlewaretoken': $('input[name=csrfmiddlewaretoken]').val()
},
datatype:'json',
success: function(data) {
if (data['success'])
console.log(prefered);
}
});
});
Мои views.py
def add(request):
data = {'success': False}
if request.method=='POST':
prefered = request.POST.get('prefered')
print (prefered)
print (type(prefered))
user = request.user
print (user)
data['success'] = True
return JsonResponse(data)