Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django rest框架后获取序列化程序_Python_Django_Django Rest Framework_Serialization - Fatal编程技术网

Python Django rest框架后获取序列化程序

Python Django rest框架后获取序列化程序,python,django,django-rest-framework,serialization,Python,Django,Django Rest Framework,Serialization,我是Django rest框架序列化程序的新手 我有一个用于GET请求的序列化程序 class MemberChargeSerializer(serializers.ModelSerializer): chargeTypeName = serializers.CharField( source='chargeType.memberChargeTypeName', read_only=True) firstName = serializers.Ch

我是Django rest框架序列化程序的新手

我有一个用于GET请求的序列化程序

class MemberChargeSerializer(serializers.ModelSerializer):

    chargeTypeName = serializers.CharField(
        source='chargeType.memberChargeTypeName',
        read_only=True)
    firstName = serializers.CharField(
    source='user.first_name',
    read_only=True)

    lastName = serializers.CharField(
        source='user.last_name',
        read_only=True)

    class Meta:
        model = MemberCharge
        fields = ('id', 'chargeTypeName', 'firstName', 'lastName', 'amount',
        'amountPaid', 'fullyPaid', 'date', 'void')
它工作得很好。现在,我需要做一些事情来处理
POST
请求。我不会在
请求中提交以下字段:
id
firstName
lastName
fullyPaid
。我正在考虑实现另一个序列化程序来处理我的
POST
请求。这样做对吗?请记住,我将提交其他字段,而不是使用某些字段


谢谢。

序列化程序可用于get和post请求。它基本上取决于模型字段选项

对于post请求仅使用字段“id”、“firstName”、“lastName”、“fullyPaid”,您的其他字段必须是可选的,然后只有您才能调用序列化程序的有效方法

例如

对于其他字段,请使用blank=True,这将使字段成为可选字段

chargeTypeName = models.CharField(max_length=6, blank=True)

序列化程序可用于get和post请求。它基本上取决于模型字段选项

对于post请求仅使用字段“id”、“firstName”、“lastName”、“fullyPaid”,您的其他字段必须是可选的,然后只有您才能调用序列化程序的有效方法

例如

对于其他字段,请使用blank=True,这将使字段成为可选字段

chargeTypeName = models.CharField(max_length=6, blank=True)

序列化程序可用于get和post请求。它基本上取决于模型字段选项

对于post请求仅使用字段“id”、“firstName”、“lastName”、“fullyPaid”,您的其他字段必须是可选的,然后只有您才能调用序列化程序的有效方法

例如

对于其他字段,请使用blank=True,这将使字段成为可选字段

chargeTypeName = models.CharField(max_length=6, blank=True)

序列化程序可用于get和post请求。它基本上取决于模型字段选项

对于post请求仅使用字段“id”、“firstName”、“lastName”、“fullyPaid”,您的其他字段必须是可选的,然后只有您才能调用序列化程序的有效方法

例如

对于其他字段,请使用blank=True,这将使字段成为可选字段

chargeTypeName = models.CharField(max_length=6, blank=True)

我添加了blank=True参数,当我尝试在浏览器上检索某个对象或对象集合时,出现以下错误:\uuuu init\uuuu()得到一个意外的关键字参数“blank”。我在序列化程序中输入了该参数,它应该在模型中。所以重要的是如何定义模型以验证或使序列化程序中的数据无效。您还可以通过覆盖serializerI added blank=True参数的is_valid函数来添加其他自定义验证,当我尝试在浏览器上检索对象或对象集合时,我会出现以下错误:__init_u;()得到一个意外的关键字参数“blank”。我在序列化程序中输入了该参数,它应该在模型中。所以重要的是如何定义模型以验证或使序列化程序中的数据无效。您还可以通过覆盖serializerI added blank=True参数的is_valid函数来添加其他自定义验证,当我尝试在浏览器上检索对象或对象集合时,我会出现以下错误:__init_u;()得到一个意外的关键字参数“blank”。我在序列化程序中输入了该参数,它应该在模型中。所以重要的是如何定义模型以验证或使序列化程序中的数据无效。您还可以通过覆盖serializerI added blank=True参数的is_valid函数来添加其他自定义验证,当我尝试在浏览器上检索对象或对象集合时,我会出现以下错误:__init_u;()得到一个意外的关键字参数“blank”。我在序列化程序中输入了该参数,它应该在模型中。因此,重要的是如何定义模型来验证或使序列化程序中的数据无效。您还可以通过重写序列化程序的is_valid函数来添加额外的自定义验证