前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Django实战-信息资讯-付费资讯基础模型

Django实战-信息资讯-付费资讯基础模型

作者头像
小团子
发布2019-07-18 16:43:10
5290
发布2019-07-18 16:43:10
举报
文章被收录于专栏:数据云团数据云团

Django网络应用开发的5项基础核心技术包括模型(Model)的设计,URL 的设计与配置,View(视图)的编写,Template(模板)的设计和Form(表单)的使用。

与之前电商项目的商品模型 Django实战-生鲜电商-模型层,本次的付费设计相对比较简单。多增加了一项购买资讯服务就可以观看学习课程视频。

课程分类、讲师、课程、支付订单,会发现在用户购买之前怎样限制用户不能观看视频,是通过一个字段来判断用户是否购买,还是通过查询数据库,查找用户是否有支付过这一笔课程订单。课程与分类和讲师都是一对多的关系。

① 课程分类

代码语言:javascript
复制
class CourseCategory(models.Model):
    name = models.CharField(max_length=100, verbose_name="分类名称")

② 讲师

代码语言:javascript
复制
class Teacher(models.Model):
    username = models.CharField(max_length=100, verbose_name="名称")
    jobtitle = models.CharField(max_length=100, verbose_name="职称")
    profile = models.TextField(verbose_name="自我介绍")
    avatar = models.URLField(verbose_name="头像")

③ 课程

代码语言:javascript
复制
class Course(models.Model):
    title = models.CharField(max_length=100, verbose_name="标题")
    video_url = models.URLField(verbose_name="视频链接")
    cover_url = models.URLField(verbose_name="封面图链接")
    price = models.FloatField(verbose_name="价格")
    duration = models.IntegerField(verbose_name="时长")
    profile = models.TextField(verbose_name="视频介绍")
    pub_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
    category = models.ForeignKey('CourseCategory', on_delete=models.DO_NOTHING, verbose_name="课程分类") #什么事也不做
    teacher = models.ForeignKey('Teacher', on_delete=models.DO_NOTHING, null=True, verbose_name="课程讲师")

④ 支付订单

代码语言:javascript
复制
class CourseOrder(models.Model):
    pub_time = models.DateTimeField(auto_now_add=True)
    amount = models.FloatField()
    # 1: 代表未支付 2:支付成功
    atatus = models.SmallIntegerField()
    course = models.ForeignKey("Course", on_delete=models.DO_NOTHING)
    buyer = models.ForeignKey("xfzauth.User", on_delete=models.DO_NOTHING)
#     1: 支付宝支付  2:微信支付 0: 未知
    istype = models.SmallIntegerField(default=0)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据云团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档