序列化 正向查詢 和反向查詢

2022-06-29 11:30:14 字數 1496 閱讀 1074

#課程標籤

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...