Beispiel #1
0
class OrderItem(models.Model):
    order = models.ForeignKey(Order,
                              on_delete=models.DO_NOTHING,
                              verbose_name="所属订单",
                              default="",
                              blank=True,
                              db_constraint=False,
                              related_name="list")
    lessonid = models.CharField(max_length=255, verbose_name="课程id")
    img = SImageField(max_length=255, verbose_name="封面图")
    title = models.CharField(max_length=255, verbose_name="标题")
    price = models.IntegerField(default=0, verbose_name="价格")
    isDiscount = models.BooleanField(verbose_name="是否优惠")
    discountPrice = models.IntegerField(default=0, verbose_name="折后价格")

    class Meta:
        verbose_name = '订单小项'
        verbose_name_plural = verbose_name
Beispiel #2
0
class Comment(models.Model):
    lessonid = models.CharField(max_length=255, verbose_name="课程id")
    name = models.CharField(max_length=255, verbose_name="评论者", default="")
    avatar = SImageField(upload_to="Comment_avatar",
                         max_length=255,
                         verbose_name="评论头像",
                         default="")
    content_score = models.FloatField(verbose_name="内容分数", default=0)
    easy_score = models.FloatField(verbose_name="简单分数", default=0)
    logic_score = models.FloatField(verbose_name="逻辑分数", default=0)
    time = models.DateTimeField(auto_now=True, verbose_name="评论时间")
    comment = models.CharField(max_length=1000,
                               verbose_name="评论内容",
                               default="")

    class Meta:
        verbose_name = '评论'
        verbose_name_plural = verbose_name
Beispiel #3
0
class Integral(models.Model):
    img = SImageField(upload_to="Integral_img",
                      max_length=255,
                      verbose_name="图片")
    title = models.CharField(max_length=255, verbose_name="标题")
    integral = models.IntegerField(default=0, verbose_name="积分数")
    type = models.ForeignKey(
        IntegralType,
        on_delete=models.DO_NOTHING,
        verbose_name="积分商品类型",
        default="",
        blank=True,
        db_constraint=False,
    )

    class Meta:
        verbose_name = '积分商品'
        verbose_name_plural = verbose_name
Beispiel #4
0
class Article(models.Model):
    title = models.CharField(max_length=255, verbose_name="文章名")
    img = SImageField(upload_to="Article_img",
                      max_length=255,
                      verbose_name="图片")
    views = models.IntegerField(default=0, verbose_name="查看量")
    author = models.CharField(max_length=255, verbose_name="作者")
    tag = models.CharField(max_length=255, verbose_name="标签")
    time = models.CharField(max_length=255, verbose_name="时间")
    type = models.ForeignKey("ArticleType",
                             on_delete=models.DO_NOTHING,
                             verbose_name="文章类型",
                             default="",
                             blank=True,
                             db_constraint=False)

    class Meta:
        verbose_name = '文章'
        verbose_name_plural = verbose_name
Beispiel #5
0
class User(AbstractUser):
    # REQUIRED_FIELDS = []
    # USERNAME_FIELD = "username"
    #
    # is_active = True
    #
    # @property
    # def is_anonymous(self):
    #     """
    #     Always return False. This is a way of comparing User objects to
    #     anonymous users.
    #     """
    #     return False
    #
    # @property
    # def is_authenticated(self):
    #     """
    #     Always return True. This is a way to tell if the user has been
    #     authenticated in templates.
    #     """
    #     return True

    # username = models.CharField(max_length=255, verbose_name="用户名", unique=True)
    # password = models.CharField(max_length=255, verbose_name="密码")
    nickname = models.CharField(max_length=255, verbose_name="昵称")
    avatar = SImageField(
        upload_to="User_avatar",
        max_length=255,
        default="https://static.mukewang.com/static/img/avatar_default.png",
        verbose_name="头像")
    sex = models.CharField(max_length=255, default="male", verbose_name="性别")
    job = models.CharField(max_length=255, default="", verbose_name="工作")
    city = models.CharField(max_length=255, default="", verbose_name="城市")
    signature = models.CharField(max_length=255,
                                 default="",
                                 verbose_name="个性签名")
    hour = models.IntegerField(default=0, verbose_name="学习时长")
    exp = models.IntegerField(default=0, verbose_name="学习经验数")
    integral = models.IntegerField(default=0, verbose_name="积分数")
    follow = models.IntegerField(default=0, verbose_name="follow数")
    fans = models.IntegerField(default=0, verbose_name="粉丝数")
    email = models.CharField(max_length=255, default="", verbose_name="邮箱")
    qq = models.CharField(max_length=255, default="", verbose_name="qq")
    phone = models.CharField(max_length=255, default="", verbose_name="手机号")
    wechat = models.CharField(max_length=255, default="", verbose_name="微信")
    weibo = models.CharField(max_length=255, default="", verbose_name="微博")
    create_time = models.DateTimeField(auto_now=True, verbose_name="注册时间")

    # objects = UserManager()
    #
    # def check_password(self, raw_password):
    #     """
    #     Return a boolean of whether the raw_password was correct. Handles
    #     hashing formats behind the scenes.
    #     """
    #
    #     def setter(raw_password):
    #         self.set_password(raw_password)
    #         # Password hash upgrades shouldn't be considered password changes.
    #         self._password = None
    #         self.save(update_fields=["password"])
    #
    #     return check_password(raw_password, self.password, setter)

    class Meta:
        verbose_name = '用户'
        verbose_name_plural = verbose_name
Beispiel #6
0
class Lesson(models.Model):
    title = models.CharField(max_length=255, verbose_name="课程标题", unique=True)
    introduction = models.CharField(max_length=255,
                                    default="",
                                    verbose_name="课程介绍")
    img = SImageField(upload_to="Lesson_img",
                      max_length=255,
                      verbose_name="课程图片")
    banner = SImageField(upload_to="Lesson_banner",
                         max_length=255,
                         verbose_name="课程Banner")
    price = models.IntegerField(default=0, verbose_name="课程价格")
    isDiscount = models.BooleanField(verbose_name="是否打折")
    discountPrice = models.IntegerField(default=0, verbose_name="打折后价格")
    time = models.DateTimeField(auto_now=True,
                                max_length=255,
                                verbose_name="课程添加时间")
    persons = models.IntegerField(default=0, verbose_name="学习人数")
    comments = models.IntegerField(default=0, verbose_name="评论数")
    category = models.ForeignKey("LabelType",
                                 on_delete=models.DO_NOTHING,
                                 verbose_name="课程分类",
                                 default="",
                                 blank=True,
                                 db_constraint=False)
    type = models.ForeignKey(
        "LessonType",
        on_delete=models.DO_NOTHING,
        verbose_name="课程类型",
        default="",
        blank=True,
        db_constraint=False,
    )
    hard = models.ForeignKey(
        "LessonHardType",
        on_delete=models.DO_NOTHING,
        verbose_name="课程难度类型",
        default="",
        blank=True,
        db_constraint=False,
    )
    teacher = models.ForeignKey("Teacher",
                                on_delete=models.DO_NOTHING,
                                verbose_name="课程讲师",
                                default="",
                                blank=True,
                                db_constraint=False)
    labels = models.ManyToManyField("Label",
                                    verbose_name="课程拥有的label",
                                    default=None,
                                    blank=True,
                                    db_constraint=False)
    script = models.ForeignKey(LessonScript,
                               on_delete=models.DO_NOTHING,
                               verbose_name="课程角标",
                               default="",
                               null=True,
                               blank=True,
                               db_constraint=False)

    class Meta:
        verbose_name = '课程'
        verbose_name_plural = verbose_name