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

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

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

это мой реальный url

path('assignagent/id/int:pk',views.SciBulkAssignView.as_view(),name='assignagent')

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 код я выбираю все идентификаторы нужно обновить статус идентификатора (флажки)

<input type="button" class="main" value="selectall" onclick="checkAll()" name="inputs">

           <button type="button" value="deselectAll" class="main" onclick="uncheckAll()">Clear</button>



<script type="text/javascript">
     // 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 < 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 < items.length; i++) {
               if (items[i].type == 'checkbox')
                   items[i].checked = false;
           }
       }
  </script>
Вернуться на верх