django если в запросе всегда ложно - PullRequest
0 голосов
/ 12 июля 2020
class Product(models.Model):
    title           = models.CharField(max_length=120)
    slug            = models.SlugField(blank=True)
    description     = models.TextField()
    price           = models.DecimalField(decimal_places=2, max_digits=20, default=39.99)
    image           = models.ImageField(upload_to=upload_image_path,null=True, blank=True)
    featured        = models.BooleanField(default=False)
    active          = models.BooleanField(default=True)
    timestamp       = models.DateTimeField(auto_now_add=True)


class OrderItem(models.Model):
    item = models.ForeignKey(Product, on_delete=models.CASCADE )
    quantity = models.IntegerField(default=1)
    item_cart = models.CharField(max_length=20, null=True, blank=True)
    active = models.BooleanField(default=True)

class Cart(models.Model):
    user        = models.ForeignKey(User,null=True, blank=True,on_delete=models.CASCADE)
    products    = models.ManyToManyField(OrderItem, blank=True)
    subtotal    = models.DecimalField(default=0.00, max_digits=100, decimal_places=2)
    total       = models.DecimalField(default=0.00,max_digits=100,decimal_places=2)
    updated     = models.DateTimeField(auto_now=True)
    timestamp   = models.DateTimeField(auto_now_add=True)


"""
"""

def product_list_view(request):
    queryset = Product.objects.all()
    item     = OrderItem.objects.all()
    cart_obj, new_obj = Cart.objects.new_or_get(request)
    print(item)
    context = {
        'product_list':  queryset,
        'cart'       :  cart_obj,
        'orderitem'       :  item
    }
    return render(request, "products/list.html", context)

  """hmtl page list.hmtl
     {% if obj in orderitem %} doesnt print else print allways 
  """    

  {% for obj in product_list %}
        <div class='col my-3'>
            {{obj.title}}
            {{obj.price}}
            {{orderitem}}
            {% if obj in orderitem %}
            <h1>in cart</h1>
            {% else %}
            <h5>delete</h5>
            {% endif %}
        </div>
    {% endor %}

элемент заказа = , ]>, obj = hi, в list.hmtl, если obj в orderitem всегда показывает ошибку, а также пробовал obj.title в orderitem Но всегда в противном случае заявление печатается без каких-либо ошибок, пытаясь проверить, что продукт находится в заказанном элементе ...

...