Добавление данных из карточек Bootstrap в объекты Django с помощью флажков

Это довольно сложный вопрос, но:

Я использую Django. Пользователь вводит данные на одном шаблоне, а затем, используя логику в моем представлении и вызов API, отображается следующая страница, на которой отображается несколько bootstrap-карт, каждая из которых содержит данные из вызова API, присутствующего в первом представлении.

Вверху каждой карточки бутстрапа, содержащей данные, находится флажок. Я хотел бы, чтобы пользователь мог отметить/отметить любую карточку бутстрапа, чтобы добавить данные из этих карточек как новый объект (NewNFT из моего models.py).

В попытке сделать это менее сложным, я просто поделюсь своим html, который показывает, как каждая карточка форматируется с текстовым полем/данными из вызова API, а затем я также поделюсь своей моделью для создаваемого объекта.

Может ли кто-нибудь объяснить, как добавить каждую из этих "карточек" (на самом деле данные из каждой карточки) в качестве нового объекта для моей модели? Я не могу понять логику view.py, чтобы это произошло. По какой-то причине он не позволяет мне отобразить, но, конечно, там будет форма вокруг данных карточки, а также кнопка отправки. И данные из формы, которые я ищу, следующие:

<div class="row mb-3">
    <div class="col-lg-12 col-sm-12 text-primary">
      <div class="d-flex flex-wrap">
        {% for nft_dict in list_of_nfts %}
  
        <div class="card m-3 shadow form-check-inline" style="width: 16rem">
          <label class="form-check-label" for="check1">
            <input
              type="checkbox"
              style="margin-right: 20px"
              class="form-check-input"
              id="check1"
              value="something"
              checked
            />Add to {{new_gallery_name}}
          </label>
  
          <img
            class="card-img-top"
            src="{{nft_dict.image}}"
            alt="Card image cap"
          />
          <div class="card-body">
            <h4
              class="card-title"
              style="
                color: #212529;
                font-weight: bolder;
                background-color: rgb(231, 114, 208);
                padding: 10px;
                border-radius: 5px;
              "
            >
              {{nft_dict.name}}
            </h4>
  
            <div class="card-text">
              <span style="color: #212529; font-weight: bold">Created:</span>
              <span style="color: rgb(230, 73, 198)"
                >{{nft_dict.nft_created_date}}</span
              >
            </div>
            <span style="color: #212529; font-weight: bold">About:</span>
            <span class="card-text" style="color: rgb(230, 73, 198)">
              {{ nft_dict.description|escape|safe }}
            </span>
            <div>
              <a
                href="{{nft_dict.link}}"
                class="btn btn-primary"
                style="
                  margin-top: 10px;
                  background-color: rgb(231, 114, 208);
                  border: none;
                "
                >View on OpenSea <i class="fas fa-arrow-circle-right"></i
              ></a>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  
class NewNFT(models.Model):
    name = models.CharField(max_length=200)
    image = models.ImageField(upload_to=get_upload_path)
    gallery = models.ForeignKey(NewGallery, on_delete=models.CASCADE, related_name='newnft')
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='usernft')
    description = models.CharField(max_length=3000)
    link = models.URLField(max_length=300)
    contract_address = models.CharField(max_length=300)
    created_date = models.DateTimeField(auto_now_add=True)
    edited_date = models.DateTimeField(auto_now=True)

    def __str__(self):
        return self.name

    
Вернуться на верх