デバイスにグループを送信するためのDeviceGroupクラスとAPIViewクラスがあるとします。インスタンスをDRFのシリアライザに渡すのは妥当ですか?
DeviceGroupためのシリアライザは、上記のポスト機能で
class DeviceGroupSerializer(serializers.ModelSerializer):
id = serializers.UUIDField(source='token', format='hex', read_only=True)
class Meta:
model = DeviceGroup
fields = ['id','name']
class DevicesGroupsAPIView(APIView):
permission_classes = (permissions.IsAuthenticated,)
def post(self, request, token=None, format=None):
print('reqquest', request.data)
print('token', token)
device_group_instance = DeviceGroup.objects.get(token=token)
for device_token in request.data['devices']:
device = Device.objects.get(token=device_token, owner=request.user)
device.group = device_group_instance
device.save()
あり、それが応答を返すその後、シリアライザのインスタンスを作成し、シリアライザが有効であるかどうかを確認する義務があります。
デバイスとDeviceGroupとの関係は、デバイスが一つのグループだけにすることができ、グループは、複数のデバイス(デバイスIDのリスト)を持つことができている
私が投稿するDeviceGroupSerializerを使用する必要がある場合は、ポスト機能はどうあるべきかデバイスのリスト?私はこのシリアライザを理解しておらず、明確な部分を見ていました。
他に何ができるのかわかりますか? – pythonBeginner
これはあなたがやろうとしていることにあまりにも依存するので、これは不可能です。さらに、リンクはそれを達成するのに十分以上のものを提供します。 – Linovia