Как обновить статус пользователя (несколько пользователей одновременно использовали идентификаторы проверки)?

#javascript #python #django #django-models #django-views

Вопрос:

меня беспокоит то, что пользователь выбирает все идентификаторы и обновляет статус пользователя(например :статус= «назначить»)?

я получаю этот URL-адрес с несколькими идентификаторами(когда я проверяю все) http://127.0.0.1:9000/assignagent/id/20,21,22,23,24,25,26,27

это мой настоящий URL-адрес

путь(‘назначающий агент/идентификатор/int:pk’,представления.SciBulkAssignView.as_view(),имя=’назначающий агент’)

views.py

 class SciBulkAssignView(UpdateView):  login_url = 'login'  model = Sci1stKey  fields = ['id','projectId','status']  initial = {'status': 'assign'}  template_name = 'all_adminhtmlpages/updatesci_details.html'  success_url = reverse_lazy('reassigntickets')  

и еще один вид, который я тоже попробовал

 # def assignagent(request, id):  top = get_object_or_404(Sci1stKey, id=id)  top.status ='assign'  top.save(update_fields=['status'])  return redirect('assigntickets')  

это мой html и js код , я выбираю все идентификаторы, необходимые для обновления статуса идентификатора( флажки)

 lt;input type="button" class="main" value="selectall" onclick="checkAll()" name="inputs"gt;   lt;button type="button" value="deselectAll" class="main" onclick="uncheckAll()"gt;Clearlt;/buttongt;    lt;script type="text/javascript"gt;  // Select all check boxes : Setting the checked property to true in checkAll() function  function checkAll(){  var items = document.getElementsByName('brand');  var checkedValue = [];  for (var i = 0; i lt; items.length; i  ) {  if (items[i].type == 'checkbox')  items[i].checked = true;  checkedValue.push(items[i].value) ;   }  console.log(checkedValue);  url = '/assignagent/id/'   checkedValue;  window.location.replace(url);  }  // Clear all check boxes : Setting the checked property to false in uncheckAll() function  function uncheckAll(){  var items = document.getElementsByName('brand');  for (var i = 0; i lt; items.length; i  ) {  if (items[i].type == 'checkbox')  items[i].checked = false;  }  }  lt;/scriptgt;  

Комментарии:

1. Я думаю, что вы должны использовать POST для массового обновления нескольких пользователей. Прямо сейчас вы определяете int:pk в URL-адресах, но ...d/20,21,22,23,24,25,26,27 , очевидно, не целое число.

2. Я не понимаю

3. если я передаю один идентификатор ,он работает, но мне нужны все идентификаторы, но как обновить эти идентификаторы