在线课堂

一、功能需求分析

  1/ 分析

  存储,转码,加密;个人单独开发,不现实

  2/ 功能

  视频展示列表页面

  视频播放详情

二、模型设计

  1.表字段分析

    a、老师表

      姓名

      职称

      简介

      头像

    b、课程分类表

      名称

    c、课程表

      课程名

      封面

      视频地址

      课程时长

      课程简介

      课程大纲

       老师

      分类

    2.模型定义

在course/models.py中定义如下模型

  

from django.db import models

from utils.models import BaseModel

class Teacher(BaseModel):

    name = models.CharField('讲师姓名', max_length=150, help_text='讲师姓名')

    title = models.CharField('职称', max_length=150, help_text='职称')

    profile = models.TextField('简介', help_text='简介')

    photo = models.URLField('头像url', default='', help_text='头像url')

    class Meta:

        db_table = 'tb_teachers'

        verbose_name = '讲师'

        verbose_name_plural = verbose_name

    def __str__(self):

        return self.name

class CourseCategory(BaseModel):

    name = models.CharField('课程分类名', max_length=100, help_text='课程分类名')

    class Meta:

        db_table = 'tb_course_category'

        verbose_name = '课程分类'

        verbose_name_plural = verbose_name

    def __str__(self):

        return self.name

class Course(BaseModel):

    title = models.CharField('课程名', max_length=150, help_text='课程名')

    cover_url = models.URLField('封面url', help_text='封面url')

    video_url = models.URLField('课程视频url', help_text='课程视频url')

    duration = models.DurationField('课程时长', help_text='课程时长')

    profile = models.TextField('课程简介', null=True, blank=True, help_text='课程简介')

    outline = models.TextField('课程大纲', null=True, blank=True, help_text='课程大纲')

    teacher = models.ForeignKey('Teacher', on_delete=models.SET_NULL, null=True, blank=True)

    category = models.ForeignKey('CourseCategory', on_delete=models.SET_NULL, null=True, blank=True)

    class Meta:

        db_table = 'tb_course'

        verbose_name = '课程'

        verbose_name_plural = verbose_name

    def __str__(self):

        return self.title

      

猜你喜欢

转载自www.cnblogs.com/wdty/p/11415024.html
今日推荐