# Create your models here.
class Wxuser(models.Model):
id = models.AutoField(primary_key=True)
openid=models.CharField(max_length=255)
name = models.CharField(max_length=50)
avatar = models.CharField(max_length=200)
language = models.CharField(max_length=50)
province = models.CharField(max_length=50)
city = models.CharField(max_length=50)
country = models.CharField(max_length=50)
gender = models.CharField(max_length=50),
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.openid
class Category(models.Model):
cat_id=models.AutoField(primary_key=True)
category_name=models.CharField(max_length=50)
parent=models.ForeignKey(to='Category', to_field='cat_id', related_name="Category", on_delete=models.CASCADE, db_constraint=False,blank=True,null=True)
p_order=models.IntegerField(default=0)
is_show =models.BooleanField(default=1)
image = models.OneToOneField(to='Images', to_field='image_id', on_delete=models.CASCADE, db_constraint=False,null=True)
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.category_name
class Images(models.Model):
image_id=models.AutoField(primary_key=True)
name=models.CharField(max_length=30,default="0")
image_url=models.ImageField(upload_to="")
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.name
class Product(models.Model):
product_id=models.AutoField(primary_key=True)
name=models.CharField(max_length=200)
price=models.DecimalField(max_digits=10, decimal_places=2)
weight=models.IntegerField(default=0)
cat = models.ForeignKey(to="Category", to_field="cat_id", related_name="Product", db_constraint=False, on_delete=models.CASCADE)
intor = models.TextField(max_length=250)#详细介绍
brief = models.TextField(max_length=250)#商品简介
image=models.OneToOneField(to='Images',to_field='image_id',on_delete=models.CASCADE,db_constraint=False)
stock = models.OneToOneField(to="Stock", to_field="stock_id", db_constraint=False, on_delete=models.CASCADE)
buy_count=models.IntegerField(default=0)#购买量
disabled = models.BooleanField(default=1)#是否显示
w_order=models.IntegerField(default=0)#权重
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.name
class Order(models.Model):
order_id = models.CharField(max_length=50, unique=True, primary_key=True)
status_choices = (("active", '活动订单'), ("dead", '作废订单'), ("finish", '已完成订单'))
status = models.CharField(choices=status_choices, default="active", max_length=50)
pay_status_choices = ((0, '未付款'), (1, '已付款'))
pay_status = models.SmallIntegerField(choices=pay_status_choices, default=0)
payed = models.DecimalField(max_digits=10, decimal_places=2,default=0)
order_total = models.DecimalField(max_digits=10, decimal_places=2,default=0)
ship_status_choices = ((0, '未发货'), (1, '已发货'))
pay_app = models.CharField(max_length=100)
wxuser = models.ForeignKey(to="Wxuser", to_field="id", related_name="Order", db_constraint=False,on_delete=models.CASCADE)
quantity = models.IntegerField(default=0)
memo = models.CharField(max_length=200, default=0)
consignee_name = models.CharField(max_length=200, default=0)
consignee_area = models.CharField(max_length=200, default=0)
consignee_address = models.CharField(max_length=200, default=0)
consignee_zip = models.CharField(max_length=200, default=0)
consignee_mobile = models.CharField(max_length=200,default=0)
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.order_id
class Order_items(models.Model):
item_id = models.AutoField(primary_key=True)
order= models.ForeignKey(to="Order", to_field="order_id", related_name="Order_items", db_constraint=False,on_delete=models.CASCADE)
product=models.ForeignKey(to="Product", to_field="product_id", related_name="Order_items", db_constraint=False,on_delete=models.CASCADE,null=True)
name = models.CharField(max_length=200)
image = models.ForeignKey(to='Images', to_field='image_id',related_name="Order_items", on_delete=models.CASCADE,db_constraint=False)
price = models.DecimalField(max_digits=10, decimal_places=2,default=0)
amount=models.DecimalField(max_digits=10, decimal_places=2,default=0)
nums=models.IntegerField()
send_nums=models.IntegerField(null=True)
brief=models.CharField(max_length=200)
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
class Stock(models.Model):
stock_id=models.AutoField(primary_key=True)
name=models.CharField(max_length=100)
quantity=models.IntegerField(default=0)#库存量
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.name
class Banner(models.Model):
product = models.OneToOneField(to="Product", to_field="product_id", db_constraint=False, on_delete=models.CASCADE)
w_order = models.IntegerField(default=0) # 权重
image = models.OneToOneField(to='Images', to_field='image_id', on_delete=models.CASCADE, db_constraint=False)
is_show =models.BooleanField(default=1)
creat_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def __str__(self):