from rest_framework import serializers from .models import ConnectionType, Connection from qrtr_account.models import BankAccount class ConnectionTypeSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = ConnectionType fields = ['url', 'name', 'filename'] extra_kwargs = { 'name': {'read_only': True}, 'filename': {'read_only': True} } class ConnectionAccountSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = Connection fields = ['pk', 'url', 'name', 'type'] class BankAccountReadSerializer(serializers.HyperlinkedModelSerializer): connection = ConnectionAccountSerializer(read_only=True) class Meta: model = BankAccount fields = ['pk', 'url', 'connection'] class ConnectionSerializer(serializers.HyperlinkedModelSerializer): bank_accounts = BankAccountReadSerializer(read_only=True, source='*') class Meta: model = Connection fields = ['url', 'name', 'type', 'credentials', 'bank_accounts'] extra_kwargs = { 'type': {'write_only': True}, 'credentials': {'write_only': True} }