from django.db import models
# 建立老師模型
class teacher(models.model):
# 教師名稱
name = models.charfield(max_length=32,unique=true)
# 新增時間
addtime = models.datetimefield(auto_now_add=true)
class meta:
# 指定表名
db_table = 'teacher'
# 建立學生模型,乙個學生只能選擇乙個老師
class student(models.model):
# 學生名稱
name = models.charfield(max_length=32,unique=true)
# 新增時間
addtime = models.datetimefield(auto_now_add=true)
# 外來鍵 與teacher類繫結
teacher = models.foreignkey('teacher',on_delete=models.cascade)
class meta:
# 指定表名
db_table = 'student'
# 學生檢視
class studentview(apiview):
# 獲取資料
def get(self,request):
data = models.student.objects.all()
info = studentserializer(data,many=true)
return response()
# 新增資料
def post(self,request):
data = request.data
flag = models.student.objects.create(**data)
if not flag:
return response()
return response()
# 編輯資料
def put(self,request):
id = request.data.pop('id')
flag = models.student.objects.filter(id=id).update(**request.data)
if not flag:
return response()
return response()
# 刪除資料
def delete(self,request):
id = request.data.get('id')
student = models.student.objects.filter(id=id).delete()
if not student[0]:
return response()
return response()
序列化類 serializers.py
from rest_framework import serializers
from . import models
# 老師資料序列化
class teacherserializer(serializers.modelserializer):
class meta:
model = models.teacher
fields = '__all__'
# 學生資料序列化
class studentserializer(serializers.modelserializer):
class meta:
model = models.student
fields = '__all__'
二級路由 urls.py
from django.urls import path
from . import views
urlpatterns = [
path('teacher/',views.teacherview.as_view()),
path('student/',views.studentview.as_view()),
]
訪問位址
獲取老師名下有多少個學生
獲取學生的老師是誰?
序列化和反序列化 C 序列化與反序列化。
序列化介紹 把物件用一種新的格式來表示。系列化只序列化資料。序列化不建議使用自動屬性 為什麼要序列化 將乙個複雜的物件轉換流,方便儲存與資訊交換。class program class person public int age 二進位制序列化 就是將物件變成流的過程,把物件變成byte class...
序列化與反序列化
把複雜的資料型別壓縮到乙個字串中 serialize 把變數和它們的值編碼成文字形式 unserialize 恢復原先變數 eg stooges array moe larry curly new serialize stooges print r new echo print r unserial...
序列化與反序列化
序列化是將物件處理為位元組流以儲存物件或傳輸到記憶體 資料庫或檔案。其主要目的是儲存物件的狀態,以便可以在需要時重新建立物件。相反的過程稱為反序列化。通過序列化,開發人員可以儲存物件的狀態,並在需要時重新建立該物件,從而提供物件的儲存以及資料交換。通過序列化,開發人員還可以執行類似如下的操作 通過 ...