Как отобразить данные массива django

Я использую Django postgresql. Мне нужно вставить некоторые данные в поле массива модели. Мои модели имеют вид

  class PurchaseInvoice(models.Model):
        invoice = models.CharField(max_length=20)
        date = models.DateField(default=date.today)
        product_name = ArrayField(models.CharField(max_length=500))
        price = ArrayField(models.CharField(max_length=300))
        quantity = ArrayField(models.CharField(max_length=200))
        amount = ArrayField(models.CharField(max_length=300))

Я успешно вставил данные, но когда я пытаюсь запросить данные, я получаю следующее ["['LNB Inverto', 'Dish']"]. Я хочу просмотреть свои данные в html-таблице. Мой views.py имеет следующий вид

      def purchaseDetails(request,pk):
          invo_data = PurchaseInvoice.objects.filter(invoice=pk)
          return render(request,'purchase/invoice_details.html',{'invoice':invo_data})

и мои html-таблицы как

                {% for data in invoice %}
                        <tr>
                       <td >{{data.product_name}}</td>
                            <td >{{data.price}}</td>
                            <td >{{data.quantity}}</td></tr>
                {% endfor %}
{% for data in invoice %}
    <tr>
        <td>
            {% for name in data.product_name %}
                {{ name }}
            {% endfor %}
        </td>
        <td>{{ data.price }}</td>
        <td>{{ data.quantity }}</td>
    </tr>
{% endfor %}
счастливого кодирования :)

попробуйте следующий код Ваш код почти на 100% я думаю правильный, но я не знаю почему запрос возвращает вот так ["['LNB Inverto', 'Dish']"].

PurchaseInvoice.objects.all().filter(invoice=pk)

попробуйте выполнить этот запрос, возможно, ваша проблема решится

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