Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2018
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.91 KB | None | 0 0
  1. class User(models.Model):
  2.     first_name = models.CharField(max_length=255, null=True, blank=True)
  3.     last_name = models.CharField(max_length=255, null=True, blank=True)
  4.     username = models.CharField(max_length=255, null=True, blank=True)
  5.     email = models.CharField(max_length=255, null=True, blank=True)
  6.     password = models.CharField(max_length=255, null=True, blank=True)
  7.     last_login = models.CharField(max_length=255, null=True, blank=True)
  8.     telephone = models.CharField(max_length=255, null=True, blank=True)
  9.  
  10. class Profile(models.Model):
  11.     user = models.OneToOneField(User, related_name="profile", on_delete=models.CASCADE)
  12.     image = models.ImageField(upload_to='user/%Y/%m/%d', null=True, blank=True)
  13.     about = models.TextField(null=True, blank=True)
  14.     interests = models.ManyToManyField(Category, blank=True)
  15.     address = models.CharField(max_length=255, null=True, blank=True)
  16.     city = models.CharField(max_length=255, null=True, blank=True)
  17.     telephone = models.CharField(max_length=255, null=True, blank=True)
  18.  
  19. class MessageList(models.Model):
  20.     user_from = models.ForeignKey(
  21.         User, related_name='message_list_from', blank=True, null=True, on_delete=models.CASCADE)
  22.     store = models.ForeignKey(Store, related_name='message_list_to_store',
  23.                               on_delete=models.CASCADE, blank=True, null=True)
  24.     user_to = models.ForeignKey(User, related_name='message_list_to_user',
  25.                                on_delete=models.CASCADE, blank=True, null=True)
  26.     user_from_read = models.BooleanField(default=False)
  27.     store_read = models.BooleanField(default=False)
  28.     user_to_read = models.BooleanField(default=False)
  29.     created = models.DateTimeField(auto_now_add=True, blank=True, null=True)
  30.     updated = models.DateTimeField(auto_now=True, blank=True, null=True)
  31.  
  32.  
  33. class Message(models.Model):
  34.     user_from = models.ForeignKey(
  35.         User, related_name="message_from", blank=True, null=True, on_delete=models.CASCADE)
  36.     user_to = models.ForeignKey(
  37.         User, related_name='message_to', blank=True, null=True, on_delete=models.CASCADE)
  38.     store = models.ForeignKey(
  39.         Store, related_name='store_to', blank=True, null=True, on_delete=models.CASCADE)
  40.     from_store = models.BooleanField(default=False)
  41.     content = models.TextField()
  42.     message_list = models.ForeignKey(
  43.         MessageList, related_name='message_list', on_delete=models.CASCADE)
  44.     user_from_read = models.BooleanField(default=False)
  45.     user_to_read = models.BooleanField(default=False)
  46.     store_read = models.BooleanField(default=False)
  47.     created = models.DateTimeField(auto_now_add=True)
  48.  
  49. class Store(models.Model):
  50.     owner = models.OneToOneField(User, related_name="store_owned", on_delete=models.CASCADE)
  51.     name = models.CharField(max_length=255)
  52.     image = models.ImageField(upload_to=f'stores/%Y/%m/%d', blank=True)
  53.     description = models.TextField()
  54.     address = models.CharField(max_length=255)
  55.     city = models.CharField(max_length=255)
  56.     created = models.DateTimeField(auto_now_add=True)
  57.     modified = models.DateTimeField(auto_now=True)
  58.  
  59. class Category(models.Model):
  60.     name = models.CharField(max_length=200, db_index=True)
  61.     slug = models.SlugField(max_length=200, unique=True)
  62.  
  63.  
  64. class Product(models.Model):
  65.     category = models.ForeignKey(Category, related_name='product', on_delete=models.CASCADE)
  66.     name = models.CharField(max_length=200, db_index=True)
  67.     slug = models.SlugField(max_length=200, db_index=True)
  68.     store = models.ForeignKey(Store, related_name="store_product", on_delete=models.CASCADE)
  69.     image = models.ImageField(upload_to="products/%Y/%m/%d", blank=True)
  70.     description = models.TextField(blank=True)
  71.     processing_time = models.CharField(max_length=255)
  72.     price = models.DecimalField(max_digits=10, decimal_places=2)
  73.     stock = models.PositiveIntegerField(default=60)
  74.     location = models.PointField(null=True, blank=True)
  75.     available = models.BooleanField(default=True)
  76.     created = models.DateTimeField(auto_now_add=True)
  77.     updated = models.DateTimeField(auto_now=True)
  78.  
  79. class Order(models.Model):
  80.     product = models.ForeignKey(Product, related_name="order", on_delete=models.CASCADE)
  81.     user = models.ForeignKey(User, related_name="orders_by_user", on_delete=models.CASCADE)
  82.     store = models.ForeignKey(Store, related_name="orders_to_store", on_delete=models.CASCADE)
  83.     status = models.CharField(max_length=255, choices=ORDER_STATUS, default=AWAITING)
  84.     cancellation_reason = models.CharField(max_length=255, null=True, blank=True)
  85.     quantity =models.IntegerField(default=1)
  86.     price = models.DecimalField(max_digits=10, decimal_places=2)
  87.     address = models.CharField(max_length=255)
  88.     city = models.CharField(max_length=255)
  89.     postal_code = models.CharField(max_length=255)
  90.     created = models.DateTimeField(auto_now_add=True)
  91.     updated = models.DateTimeField(auto_now=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement