类中的class Meta字段的作用:
第一个作用可以给这个类起名字 在后台的admin中显示这个类名字
class CourseCategory(models.Model):
"""课程大类, e.g 前端 后端..."""
name = models.CharField(max_length=64, unique=True) def __str__(self):
return "%s" % self.name class Meta: # 给这个类起名字
verbose_name_plural = "01.课程大类"
还可以创建这个类但是在数据库中不生成这个表
class CourseCategory(models.Model):
"""课程大类, e.g 前端 后端..."""
name = models.CharField(max_length=64, unique=True) def __str__(self):
return "%s" % self.name class Meta: # 只创建类但是不生成表
abstract = True
创建表的时候 我没可以使用contentType进行解决一张表对多张表做foreign key的关系,并且可以使用:
反向查找:GenericRelation,
正向查找:GenericForeign
在使用orm查询的时候就可以用正向反向字段 然后根据GenericRelation,GenericForeignkey的字段来进行反向正向查询
class DegreeCourse(models.Model):
"""学位课程""" # 用于GenericForeignKey反向查询, 不会生成表字段,切勿删除
# coupon = GenericRelation("Coupon") # 用于GenericForeignKey反向查询,不会生成表字段,切勿删除
degreecourse_price_policy = GenericRelation("PricePolicy") def __str__(self):
return self.name class Meta:
verbose_name_plural = "03.学位课" class OftenAskedQuestion(models.Model):
"""常见问题"""
content_type = models.ForeignKey(ContentType) # 关联course or degree_course