Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.db import models
- choices_cat = [('other', 'Other'), ('play', 'Play'), ('electronic', 'Electronic'), ('house', 'House')]
- # Create your models here.
- class Product(models.Model):
- name = models.CharField(max_length=100, null=False, blank=False)
- description = models.TextField(max_length=2000, null=True, blank=True)
- category = models.CharField(max_length=100, null=False, blank=False, default='other', choices=choices_cat)
- the_remainder = models.IntegerField(null=False, blank=False, default=0)
- price = models.DecimalField(max_digits=10, decimal_places=2, null=False, blank=False)
- class Meta:
- db_table = 'products'
- verbose_name = 'Продукт'
- verbose_name_plural = 'Продукты'
- def __str__(self):
- return f'{self.id}. {self.name}: {self.category}'
- class Basket(models.Model):
- product = models.ForeignKey('webapp.Product', on_delete=models.CASCADE, related_name='product', verbose_name='Продукт')
- qty = models.IntegerField(null=False, blank=False, default=1)
- class Meta:
- db_table = 'basket'
- verbose_name = 'Корзина'
- verbose_name_plural = 'Корзины'
- def __str__(self):
- return f'{self.id}. {self.product}: {self.qty}'
- class OrderProduct(models.Model):
- product = models.ForeignKey('webapp.Product', on_delete=models.CASCADE, related_name='product_o', verbose_name='Продукт')
- order = models.ForeignKey('webapp.Order', on_delete=models.CASCADE, related_name='order_o', verbose_name='Заказ')
- qty = models.IntegerField(null=False, blank=False)
- class Order(models.Model):
- products = models.ManyToManyField('webapp.Product', related_name='products', through='webapp.OrderProduct', through_fields=('product', 'order'))
- name = models.CharField(max_length=200, null=False, blank=False)
- phone = models.CharField(max_length=300, null=False, blank=False)
- the_address = models.CharField(max_length=300, null=False, blank=False)
- created_at = models.DateTimeField(auto_now_add=True)
- class Meta:
- db_table = 'order'
- verbose_name = 'Заказ'
- verbose_name_plural = 'Заказы'
- def __str__(self):
- return f'{self.id}. {self.products}: {self.name} - {self.phone}'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement