2017-11-13 4 views
0

残りのフレームワークを使用すると、より多くのパラメータを取得するにはどうすればよいですか?残りのフレームワークを使用すると、より多くのパラメータを取得する方法は?

これは私のモデルである:

class CloudServer(models.Model): 
    buytime = models.ForeignKey(to=BuyTime) # time duration 
    expiration_time = models.DateTimeField() # expire time 
    availablearea = models.ForeignKey(to=AvailableArea) 
    profile = models.TextField() # profile 

これは私のシリアライザです:

class CloudServerCreateSerializer(ModelSerializer): 
    class Meta: 
     model = CloudServer 
     fields = "__all__" 

は、これが私の見解です:

class CloudServerCreateAPIView(CreateAPIView): 
    serializer_class = CloudServerCreateSerializer 
    permission_classes = [] 
    queryset = CloudServer.objects.all() 

    def post(self, request, *args, **kwargs): 
     # there I want more params. 
     #serializer.save() 
     return Response(data="Create success", status=HTTP_200_OK, exception=None) 

残りのフレームワークAPIのWebブラウザ:

enter image description here

モデルフィールドに関連するパラメータはわずか4つです。

ここでは、より多くのparams入力(例えば10カウント)、 を作成したいと思います。作成するときに、10個のパラメータのうち4個をモデルシリアライザに保存し、残りの6個のパラメータを他の有用性として使用したいCloudServerCreateAPIViewpost方法で。

あなたが serializer fieldsを見てみることができます

答えて

0

あなたのCloudServerCreateSerializerでより多くのシリアライザフィールドを置くことができます。

class CloudServerCreateSerializer(ModelSerializer): 
    ... 
    ext_one = serializers.CharField() 
    ext_two = serializers.CharField() 

    class Meta: 
     model = CloudServer 
     fields = "__all__" 
関連する問題