# 序列化
关于定义模型时的 choice 参数:https://aber.sh/articles/Django-Model-CharField-Choice/
模型中的 class meta: https://aber.sh/articles/Django-Model-CharField-Choice/
# 在 default 中填入的内容是 LANGUAGE_CHOICES 中元组的第一个值 | |
language = serializers.ChoiceField(choices=LANGUAGE_CHOICES, default='python') |
序列化字段: https://q1mi.github.io/Django-REST-framework-documentation/api-guide/fields_zh/#style
def update(self, instance, validated_data):
"""
根据提供的验证过的数据更新和返回一个已经存在的`Snippet`实例。
"""
instance.title = validated_data.get('title', instance.title)
instance.code = validated_data.get('code', instance.code) # 这里的get中传入一个instance有点不明白
创建的一个模型对象
序列化
序列化后的 data 字段是类似原生字典的类型
python 字符串和字节串,https://www.cnblogs.com/springsnow/p/13174511.html#:~:text = 字节串(bytes)由 多个字节 组成,以字节为单位进行操作。 Byte 代表 1 字节,1 字节包含,位(相当于 4 位二进制数,最小值为 0 ,最大值为 15)可以用一个十六进制数来表示,因此 每字节需要两个十六进制数表示 ,
BytesIO:https://blog.csdn.net/u012206617/article/details/103401276
Serializer 负责的是字典类型(python 原生字典或者 def 的字典)和数据库模型类型的转换。另外还有字典类型和字节串类型的转换。
多个同时转换也可以,同时会自动变量列表,注意下面的字节串,整个列表被单引号包裹。
python 的 repr 函数
重要的是要记住,ModelSerializer 类并不会做任何特别神奇的事情,它们只是创建序列化器类的快捷方式:
- 一组自动确定的字段。
- 默认简单实现的 create () 和 update () 方法。
super 函数中传入类名:https://www.runoob.com/python/python-func-super.html
@csrf_exempt
https://www.cnblogs.com/renpingsheng/p/9756051.html
url 的用法:https://blog.csdn.net/sinat_35637319/article/details/78878131
上面的截图中,官网使用的 from django.conf.urls import url
已经不支持了,改成下面的形式, re_path
是使用的正则表达式。
# 请求和响应
# 基于类的视图(CBV)
# 认证和权限
外键,正向查询和反向查询:https://blog.csdn.net/zhubaoJay/article/details/96592620 https://zhuanlan.zhihu.com/p/25393972
删库
外键字段在本表中的名称
创建超级使用者:https://www.geeksforgeeks.org/how-to-create-superuser-in-django/
django 的 auth 用户认证:https://www.runoob.com/django/django-auth.html
coodie 和 session: https://www.runoob.com/django/django-cookie-session.html
django rest-framework reverse: https://blog.csdn.net/qq_22918243/article/details/90200863
# 视图集和路由器
perform_create
在 serializer 保存新的数据模型对象时调用,源对象有些字段尚没有值,可以在这里添加值
写一个视图函数看看 self.request.user 是什么
设模型有字段 a 和字段 b,当 b 的值要依赖于 a 时,此时需要重写模型的 save 方法,在 save 方法中根据 a 的取值设置 b 的值
action:https://blog.csdn.net/qq_38669698/article/details/108601061
format_suffix_patterns : https://www.bookstack.cn/read/django-rest-framework-api-guide/api-guide-format-suffixes.md
问题: request.user
是这种类型的话,如果我想存在数据库中,应该用什么类型的字段呢
urlconf:https://docs.djangoproject.com/zh-hans/4.1/topics/http/urls/