Не удается отобразить данные, которые я пытаюсь вставить на веб-страницу

В настоящее время я делаю CRUD с моделью Products и у меня возникают трудности с отображением данных, которые я пытаюсь вставить.

модель

class Products(models.Model):
    categories = models.CharField(max_length=15)
    sub_categories = models.CharField(max_length=15)
    color = models.CharField(max_length=15)
    size = models.CharField(max_length=15)
    # image = models.ImageField(upload_to = 'media/',width_field=None,height_field=None,null=True)
    title = models.CharField(max_length=50)
    price = models.CharField(max_length=10)
    sku_number = models.CharField(max_length=10)
    prod_details = models.CharField(max_length=300)
    quantity = models.IntegerField(default=0)
    isactive = models.BooleanField(default=True)

функция показа и вставки

def show(request):
    showall = Products.objects.all()
    print(showall)
    serializer = POLLSerializer(showall,many=True)
    print(serializer.data)
    return render(request,'polls/product_list.html',{"data":serializer.data})
def insert(request):
    if request.POST == "POST":
        print('POST',id)
        insert_clothes = {}
        insert_clothes['categories']=request.POST.get('categories')
        insert_clothes['sub_categories']=request.POST.get('sub_categories')
        insert_clothes['color']=request.POST.get('color')
        insert_clothes['size']=request.POST.get('size')
        # insert_clothes['image']=request.POST.get('image')
        insert_clothes['title']=request.POST.get('title')
        insert_clothes['price']=request.POST.get('price')
        insert_clothes['sku_number']=request.POST.get('sku_number')
        insert_clothes['product_details']=request.POST.get('product_details')
        insert_clothes['quantity']=request.POST.get('quantity')
        form = POLLSerializer(data = insert_clothes)
        if form.is_valid():
            form.save()
            print('data',form.data)
            print(form.errors)
            messages.success(request,'Record Updated successfully :)!!!!')
            return redirect('polls:show')
        else:
            print(form.errors)
    else:
        print('GET',id)
        return render(request,'polls/product_insert.html')

html страница вставки и показа соответственно

{% for result in data %}
      <tbody>
        <tr>
          <td><b>{{result.categories}}</b></td>
          <td><b>{{result.sub_categories}}</b></td>
          <td><b>{{result.color}}</b></td>
          <td><b>{{result.size}}</b></td>
          <td><b>{{result.title}}</b></td>
          <td><b>{{result.price}}</b></td>
          <td><b>{{result.sku_number}}</b></td>
          <td><b>{{result.prod_details}}</b></td>
          <td><b>{{result.quantity}}</b></td>
          <td style="position: relative;left:50px;">
            <a href="/product_edit/{{result.id}}/">
              <button class="btn btn-primary">
                <i class="fa-solid fa-pen-to-square"></i>
              </button>
            </a>
          </td>
          <td>
            <a href="/Delete/{{result.id}}/" onclick="return confirm('Are You Sure you want to delete?')">
              <button class="btn btn-danger">
                <i class="fa-solid fa-trash"></i>
              </button>
            </a>
          </td>
        </tr>
      </tbody>
      {% endfor %}

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

В вашем представлении вставки это должно быть if request.method =='POST':

def insert(request):
    if request.method == 'POST':
        # ... your code
Вернуться на верх