3,read_only_fields 目的:可以使用read_only_fields设置只读字段 操作流程: 1,序列化器 #1,定义书籍模型类序列化器classBookModelSerializer(serializers.ModelSerializer): ...classMeta: ...#2,设置只读字段fields ="__all__"#生成所有字段read_only_fields = ["btitle","bpub_date"] 4,...
drf: https://www.django-rest-framework.org/api-guide/fields/#string-fields 核心字段: 每个序列化器字段类构造函数都至少接受这些参数。某些Field类采用其他特定于字段的参数,但应始终接受以下内容: read_only 只读字
注意在使用新增未存在的字段时候,需要使用fields = '__all__' 或者fields = ('btitle', 'bread') 定义出来这个字段,否则会报错,找不到这个字段。 三、还有一个添加选项参数的方法 read_only_fields = ('btitle',) ,给字段增加read_only的参数 class BookModelSerializer(serializers.ModelSerializer): # 显...
18,ReadOnlyModelViewSet 目的: 可以使用ReadOnlyModelViewSet获取所有, 和单个数据 操作流程: 1, 子路由 url(r'^readonly_viewset/$', views.BooksReadOnlyModelViewSet.as_view({'get': 'list'})), url(r'^readonly_viewset/(?P<pk>\d+)/$', views.BooksReadOnlyModelViewSet.as_view({'get': '...
read_only_fields指明只读字段,即仅用于序列化输出的字段 class UserModelSerializer(serializers.ModelSerializer): """用户数据序列化器""" class Meta: model = User fields = '__all__' read_only_fields = ('phone',) extra_kwargs为ModelSerializer添加或修改原有的选项参数 class UserModelSerializer...
(self): return self.name 序列化器: class PublishSerializer(serializers.ModelSerializer): create_time = serializers.DateTimeField(required=True) phone = serializers.CharField(max_length=11, read_only=True) class Meta: model = Publish fields = "__all__" exclude = ["email"] read_only_fields...
like this: class AssetStatusHistorySerializes(serializers.ModelSerializer): """ class Meta: model = AssetStatusHistory exclude = ('asset', ) read_only_fields = '__all__' we will get this: TypeError: The `read_only_fields` option must ...
通过read_only_fields指明只读字段,即仅用于序列化输出的字段 # 继承自serializers.ModelSerializerclassStudentInfoSerializer(serializers.ModelSerializer):classMeta:model=StudentInfo# 指定要依据的模型类fields='__all__'# 自定生成全部字段read_only_fields=['id','name']# 指定列表中的字段仅用于序列化操作 ...
Ⅴ read_only_fields -- 序列化显示的,写入时为null 查询时显示,写入时为空 serializer.py模型类序列化 classMeta:#写一个内部类model=models.Book#该序列化类跟哪个表建立关系fields='__all__'#序列化全部字段read_only_fields=['price','publish']#指定字段只显示,不写入 ...
fields='__all__'# fields 指明为模型类的哪些字段被序列化 在终端中查看自动生成的序列化器如下: 代码语言:javascript 复制 >>>from apps.book.serializersimportBookInfoSerializer2>>>BookInfoSerializer2()BookInfoSerializer2():id=IntegerField(label='ID',read_only=True)name=CharField(label='名称',max_le...