Advertisement
Guest User

Untitled

a guest
Jul 6th, 2020
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.83 KB | None | 0 0
  1. # MODEL.py
  2. class MinCategory(models.Model):
  3.     name = models.CharField(max_length=255)
  4.     image = models.ImageField(null=True, blank=True)
  5.  
  6.     def __str__(self):
  7.         return self.name
  8.  
  9.  
  10. class Category(models.Model):
  11.     name = models.CharField(max_length=255)
  12.     image = models.ImageField(null=True, blank=True)
  13.     category = models.ManyToManyField(MinCategory)
  14.  
  15.     def __str__(self):
  16.         return self.name
  17.  
  18. class Product(models.Model):
  19.     name = models.CharField(max_length=255, null=True, blank=True)
  20.     digital = models.BooleanField(default=False, null=True, blank=False)
  21.     description = models.TextField(null=True, blank=True)
  22.     quality = models.CharField(max_length=255, null=True, blank=True)
  23.     product_id = models.IntegerField(default=0, null=True, blank=True)
  24.     price = models.DecimalField(max_digits=7, decimal_places=2, null=True, blank=True)
  25.     subcategory = models.ForeignKey(MinCategory, null=True, blank=True,
  26.         on_delete=models.CASCADE)
  27.     category = models.ForeignKey(Category, null=True, blank=True,
  28.         on_delete=models.CASCADE)
  29.     image = models.ImageField()
  30.    
  31.     def __str__(self):
  32.         return self.name
  33.  
  34.     @property
  35.     def imageURL(self):
  36.         try:
  37.             url = self.image.url
  38.         except:
  39.             url = ''
  40.         return url
  41.  
  42. #VIEW.py
  43. def subcategory(request, pk):
  44.     data = cartData(request)
  45.  
  46.     cartItems = data['cartItems']
  47.     order = data['order']
  48.     items = data['items']
  49.  
  50.     miniCategory = Category.objects.get(id=pk)
  51.     products = Product.objects.filter(category__id=pk)
  52.     context = {
  53.         'miniCategory': miniCategory,
  54.         'products': products,
  55.         'items': items,
  56.         'order': order,
  57.         'cartItems': cartItems,
  58.     }
  59.     return render(request, 'store/subcategory.html', context)
  60.  
  61. # VIEW
  62. {% for mini in miniCategory.category.all %}
  63.                         <div class="cards__item wow fadeInLeft" data-wow-delay='0.2s'>
  64.                        
  65.                         <div class="cards__item-img cards__item-img--shop">
  66.                         <a href="#">
  67.                             {% if mini.image %}
  68.                                 <img src="{{ mini.image.url }}" alt="Pizza +">
  69.                             {% endif %}
  70.                         </a>
  71.                         </div>
  72.                         <div class="cards__item-wrapper">
  73.                             <div class="cards__item-header">
  74.                                 <div class="item__header-name">
  75.                                     <a href="{% url 'products' mini.id %}" class="item__header-link item__header-link--reg">{{ mini.name }}</a>
  76.                                 </div>
  77.                             </div>
  78.  
  79.                             <div class="cards__item-info">
  80.                                 <!-- Это не верно -->
  81.                                 {% for product in products %}
  82.                                     {% if mini.id == product.subcategory.id %}
  83.                                         <div class="item__info-ingredietns">Кол-во ({{ product }})</div>
  84.                                     {% else %}
  85.                                         <div class="item__info-ingredietns">Кол-во (0)</div>
  86.                                     {% endif %}
  87.                                 {% endfor %}
  88.                             </div>
  89.                             <div class="cards__button">
  90.                                 <button type="button" class="button button-cart--shop">
  91.                                     <a style="color: white; text-decoration: none;" href="{% url 'products' mini.id %}" class="cards__button-text">Далее</a>
  92.                                 </button>
  93.                             </div>
  94.                         </div>
  95.                     </div>
  96.                     {% endfor %}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement