как сохранить и извлечь данные из поля массива django - PullRequest
0 голосов
/ 02 февраля 2020

так что я новичок в django. у меня есть эта модель

model.py

from django.contrib.postgres.fields import ArrayField
class Pv(models.Model):
   staff_id = ArrayField(models.CharField(max_length = 500,blank=True))
   name = ArrayField(models.CharField(max_length = 500,blank=True))
   rank = ArrayField(models.CharField(max_length = 500,blank=True))

   def __str__(self):
    return self.name

вот пример html и jquery того, чего я хочу достичь sh.

<div class="card">
                    <div class="card-header">
                      <h4 class="m-0 d-flex justify-content-center">Beneficiaries</h4>
                    </div>
                    <div class="card-body">
                          <div class="float-right">
                            <button class="btn btn-sm mt-3 btn-success">Save</button>
                          </div>
                          <div >
                          <div class="addbtn ">
                            <button  class="btn btn-success btn-sm add-more mt-3" type="button"  
                               onclick="add_fields();">Add Beneficiaries </button>
                          </div>
                    </div>
        </div>

      </div>
      $(document).ready(function(){
      var add = 0;
      $("body").on("click",".add-more", function(){
              add++;
              $(".addbtn").append(
                '<div class="control"><br>'+
                  '<div class="row"  id="remve">'+
                              '<div class="col-4">' +
                                ' <div class="row">'+
                                    '<label for="" class="col pr-0 col-form-label-sm">Staff
                                     ID</label>'+
                                ' </div> '   +
                                    '<div class="col pl-0">'+
                                          '<input type="text" class="form-control form-control-sm" 
                                           name="staff_id">'+
                                    '</div>'+
                              '</div>'+
                            '<div class="col-4">'  +
                              '<div class="row">' +
                                  '<label for="" class="col pr-0 col-form-label-sm">Name</label>'+
                                '</div>'+
                              '<div class="col pl-0">'+
                                '<input type="text" class="form-control form-control-sm" 
                                 name="name">'+
                              '</div>'+
                           ' </div>'+

                           ' <div class="col-3">  '+
                             ' <div class="row">'+
                                '  <label for="" class="col pr-0 col-form-label-sm">Rank</label>'+
                              '</div> '+
                              '<div class="col pl-0">'+
                               ' <input type="text" class="form-control form-control-sm" 
                                 name="rank">'+
                             ' </div>'+
                           ' </div>'  +


                              '<div >'+
                               ' <button  style="margin-top:39px;" class="btn btn-danger btn-sm 
                                 remove" type="button" onclick="add_fields();">remove</button>'+
                              '</div>'+

                  '</div>'+
                '</div>');
      });

        $("body").on("click",".remove",function(){
          $(this).parents("#remve").remove();

      });
        });

      </script>

каждый раз, когда нажимается добавочный бенефициар, он создает новую строку идентификатора, имени и ранга персонала. но дело в том, что если я введу переменные моей модели в jquery, она перестанет работать.

чего я хочу достичь, так это того, что после того, как я много раз нажал на кнопку Добавить бенефициара, я хочу быть в состоянии сохранить все staff_id в поле массива staff_id, а также все имена в именах и все ранги в рангах.

как мне выполнить sh это в django. спасибо за вашу помощь вот картинка того, чего я хочу достичь картинка

...