seller部分
买家和卖家各有不同的功能,所以分开来介绍,seller部分为卖家部分,主要功能有:卖家账号注册、登陆与退出、主页面、以及对应账号的货物与货物类型的增删改查。
seller的编写思路与成果展示
重要组成:主副路由,数据库,html文件和视图文件
- 主副路由 ,主路由最先确定,可以分为seller与buyer,副路由按功能设置,路由的学习可以点这里Django学习—路由系统和Django中的app应用、App内部的独立文件、登录功能、视图系统、MTV和MVC.;
- 数据库, 数据库主要要包含,卖家信息数据库,货物数据库,货物图片数据库,还有图片和货物关联数据库。代码可以参考如下
#卖家数具模型(注册使用)
class Seller(models.Model):
id=models.AutoField(primary_key=True)
name=models.CharField(max_length=32)
nikcname=models.CharField(max_length=32)
password=models.CharField(max_length=32)
class Goods(models.Model):
id=models.AutoField(primary_key=True)
goods_no=models.IntegerField()
name=models.CharField(max_length=32)
y_pice=models.FloatField(max_length=32)
x_pice=models.FloatField(max_length=32)
goods_num=models.IntegerField()
des=models.CharField(max_length=64)
goods_content=models.TextField()
goods_types = models.ForeignKey(to='Tpye', on_delete=models.CASCADE)
seller = models.ForeignKey(to='Seller', on_delete=models.CASCADE)
class Tpye(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=32)
class Image(models.Model):
img_address = models.ImageField()
img_label=models.CharField(max_length=64)
goods=models.ForeignKey(to='Goods',on_delete=models.CASCADE)
class Talk(models.Model):
id=models.AutoField(primary_key=True)
talk = models.CharField(max_length=256)
talk_x = models.ForeignKey(to='Goods', on_delete=models.CASCADE)
- 前端,前端可以去爬简单的界面也可以自己制作,包含主要功能即可,关联这些标签。
- 视图,视图主要写功能,与路由对应。视图的学习可以点这里Django 视图、模板、过滤器基础内容
效果图
buyer部分
买家也同时具有买家账号注册(账号,邮箱,手机注册均可)、登陆与退出、主页面、对应账号的购物车与收货地址的增删改查以及支付界面。
buyer的编写思路与成果展示
重要组成:主副路由,数据库,html文件和视图文件
- 主副路由 、视图、前端这里就不多介绍
- 数据库,数据库要包含买家账户信息,地址信息,购物车信息和邮箱信息,代码参考如下
#Create your models here.
class Buyers(models.Model):
id=models.AutoField(primary_key=True)
name = models.CharField(max_length=32)
password = models.CharField(max_length=32)
class Address(models.Model):
id = models.AutoField(primary_key=True)
receiver = models.CharField(max_length=32)#收件人姓名
address= models.CharField(max_length=32)#地址
phone=models.CharField(max_length=32)#电话
buyer=models.ForeignKey(to='Buyers',on_delete=models.CASCADE)
#购物车数据模型
class BuyCar(models.Model):
goods_id=models.CharField(max_length=32)#商品id
goods_name=models.CharField(max_length=32)#商品名称
goods_price=models.FloatField()#商品单价
goods_num=models.IntegerField()#商品数量
goods_picture=models.CharField(max_length=64)#商品缩略图
buyer=models.ForeignKey(to='Buyers',on_delete=models.CASCADE)#用户与购物车内容一对多,用户是一,购物车东西为多
class Order(models.Model):
order_num=models.CharField(max_length=32)
ord_time=models.DateTimeField()
ord_status=models.CharField(max_length=32)
ord_total=models.FloatField()
buyer=models.ForeignKey(to='Buyers',on_delete=models.CASCADE)
address=models.ForeignKey(to='Address',on_delete=models.CASCADE)
class OrderGoods(models.Model):
goods_id=models.IntegerField()
goods_name=models.CharField(max_length=32)
goods_price=models.FloatField()
goods_num=models.IntegerField()
goods_picture=models.CharField(max_length=64)
order=models.ForeignKey(to='Order',on_delete=models.CASCADE)
class EmailValid(models.Model):
value=models.CharField(max_length=32)
email_address=models.CharField(max_length=32)
time=models.DateTimeField()
效果图