Как сохранить несколько объектов одновременно в Django
Я создал флажок в каждой строке таблицы. После выбора нескольких флажков нажмите кнопку Добавить учителя, чтобы добавить имя текущего зарегистрированного пользователя (request.user.first_name) в поле 'teacher' отмеченной строки. Мне удалось получить id на страницу с таблицей с помощью ajax, но она продолжает отказываться добавлять значение поля obejct(поле учителя) сразу. view.py нуждается в редактировании, кто-нибудь знает, как это исправить?
[urls.py]
path('/study/add_teacher/', views.add_teacher, name='add_teacher'),
path('/study/student/', views.student), ----> page with table
[views.py]
def add_teacher(request):
if request.method == 'POST':
ids = request.POST.getlist('chkArray')
for id in ids:
student = Student.objects.get(pk=id)
student.teacher = request.user.first_name
student.save()
return HttpResponseRedirect(f'/study/student/') ----> page with table
[stduent.js]
$(function () {
('button.addteacher').on('click',function () {
$checkbox = $('.Checked');
var chkArray = [];
var updateTeacher = confirm("업데이트하시겠습니까?");
chkArray = $.map($checkbox, function(el){
if(el.checked) { return el.id };
});
var csrftoken = $('[name="csrfmiddlewaretoken"]').val();
$.ajax({
type:'post',
url: '/study/add_teacher/',
headers: {"X-CSRFTOKEN": "{{ csrf_token }}"},
data:{
"chkArray" : chkArray.toString(),
"csrfmiddlewaretoken": "{{ csrf_token }}",
},
success:function(data){
console.log(chkArray);
},
error : function(xhr,errmsg,err) {
console.log(xhr.status + ": " + xhr.responseText);
}
});
});
});