Advertisement
Guest User

Untitled

a guest
Oct 19th, 2017
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.14 KB | None | 0 0
  1. import autoslug
  2. from django.db import models
  3. from django.contrib.auth.models import User
  4.  
  5.  
  6. class Company(models.Model):
  7.     user = models.ForeignKey(User, related_name='company')
  8.     name = models.CharField(max_length=300, verbose_name='Имя компании')
  9.     inn = models.CharField(max_length=14, unique=True, verbose_name='ИНН')
  10.     address = models.TextField(verbose_name='Адрес')
  11.     phone = models.CharField(max_length=12, verbose_name='Телефон')
  12.     mail = models.CharField(max_length=300, verbose_name='Почта')
  13.     logo = models.ImageField(upload_to='general/static/logos/')
  14.     balance = models.BigIntegerField(default=0, verbose_name='Баланс')
  15.     date = models.DateTimeField()
  16.     slug = autoslug.fields.AutoSlugField(populate_from='name', db_index=True,
  17.                                          always_update=True, sep='-', unique=True, unique_with='date')
  18.     active = models.IntegerField(default=0, verbose_name='Активность')
  19.  
  20.     def __str__(self):
  21.         return self.name
  22.  
  23.     class Meta:
  24.         verbose_name = 'Компания'
  25.         verbose_name_plural = 'Компании'
  26.  
  27.  
  28. class Category(models.Model):
  29.     name = models.CharField(max_length=2000, verbose_name='Название категории')
  30.     slug = autoslug.AutoSlugField(populate_from='name', always_update=True, db_index=True, sep='-')
  31.     image = models.ImageField(upload_to='static/category/', verbose_name='Фото')
  32.  
  33.     def __str__(self):
  34.         return self.name
  35.  
  36.     class Meta:
  37.         verbose_name = 'Категория'
  38.         verbose_name_plural = 'Категории'
  39.  
  40.  
  41. class Product(models.Model):
  42.     name = models.CharField(max_length=2000, verbose_name='Название продукта')
  43.     number = models.CharField(max_length=500, verbose_name='Каталожный номер')
  44.     slug = autoslug.fields.AutoSlugField(populate_from='name', always_update=True, db_index=True, sep='-')
  45.     image = models.ImageField(upload_to='static/products/', verbose_name='Фото')
  46.     category = models.ForeignKey(Category)
  47.  
  48.     def __str__(self):
  49.         return self.name
  50.  
  51.     class Meta:
  52.         verbose_name = 'Товар'
  53.         verbose_name_plural = 'Товары'
  54.  
  55.  
  56. class Offer(models.Model):
  57.     product = models.ForeignKey(Product, verbose_name='Продукт')
  58.     company = models.ForeignKey(Company, verbose_name='Компания')
  59.     price = models.IntegerField(verbose_name='Цена')
  60.     active = models.IntegerField(default=0, verbose_name='Активность')
  61.  
  62.     def __str__(self):
  63.         return self.product
  64.  
  65.     class Meta():
  66.         verbose_name = 'Предложение'
  67.         verbose_name_plural = 'Предложения'
  68.  
  69.  
  70. class Attribute(models.Model):
  71.     key = models.CharField(max_length=200, verbose_name='Имя атрибута')
  72.     value = models.CharField(max_length=200, verbose_name='Значение атрибута')
  73.     product = models.ForeignKey(Product, verbose_name='Товар')
  74.  
  75.     def __str__(self):
  76.         return self.product
  77.  
  78.     class Meta:
  79.         verbose_name = 'Атрибут'
  80.         verbose_name_plural = 'Атрибуты'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement