基本的に、ModelSerializer の関連フィールドから非アクティブなユーザーを除外したいと考えています。関連フィールドのクエリセットを動的に制限することと、次のことを試しました。
class MySerializer(serializers.ModelSerializer):
users = serializers.PrimaryKeyRelatedField(queryset=User.objects.filter(active=True), many=True)
class Meta:
model = MyModel
fields = ('users',)
これらのアプローチはどちらも、クエリセットをフィルタリングするだけでは機能しませんでした。ネストされた関連する Serializer クラスに対してフィールドとしてこれを実行したい (ただし、RelatedField で動作させることさえできませんでした)。
ネストされたリレーションのクエリセットをフィルタリングするにはどうすればよいですか?