#課程標籤class coursetag(base):
title = models.charfield('課程標籤', max_length=32)
sequence = models.integerfield('展示順序', default=10)
class meta:
db_table = 'tb_coursetag'
def __str__(self):
return self.title
class course(base):
status = (
('0', '即將上線'),
('1', '已上線'),
('2', '已下線'),
)title = models.charfield('課程名', max_length=24)
desc = models.charfield('課程名', max_length=256)
img = models.imagefield('課程logo', upload_to='course', null=true)
course_type = models.foreignkey(coursetype, verbose_name='課程類別', on_delete=models.cascade, default=none, null=true)
course_tag = models.manytomanyfield(coursetag, verbose_name='課程標籤')
status = models.charfield('課程狀態', choices=status, max_length=8, default='1')
attention = models.integerfield('關注人數', default=0)
learner = models.integerfield('學習人數', default=0)
class meta:
db_table = 'tb_course'
def __str__(self):
return self.title
正向查詢
class coursecourseserializers(serializers.modelserializer):corse_type = serializers.charfield(source='course_type.title')
class meta:
model=course
fields='__all__'
反向查詢
class coursetypeserializers(serializers.modelserializer):course_set= coursecourseserializers(many=true) # 表明+set
class meta:
model=coursetype
fields='__all__'
序列化器與正向查詢和反向查詢
普通字段 name models.charfield max lenth 20 一對多欄位,foreignkey name models.foreignkey tablename,on delete related name none 多對多字段,manytomanyfield name model...
序列化正反向查詢
序列化 正向查詢 from rest framework import serializers from users.models import userinfo 正向查詢 class userinfoserializer serializers.serializer 類名小寫.外來鍵字段 good...
ORM正向和反向查詢
表結構 from django.db import models create your models here.class publisher models.model id models.autofield primary key true name models.charfield max l...