böyle modelleri var:Yaz yalnızca Django kalan çerçevesinde sadece alanları okumak
class ModelA(models.Model):
name = models.CharField()
class ModelB(models.Model):
f1 = models.CharField()
model_a = models.ForeignKey(ModelA)
Serileştiriciler:
class ASerializer(serializers.ModelSerializer):
model_b_ids = serializers.CharField()
class Meta:
model = ModelA
write_only_fields = ('model_b_ids',)
görünümler:
class AView(CreateModelMixin, GenericViewSet):
def perform_create(self, serializer):
model_b_ids = parse_somehow(serializer.validated_data["model_b_ids"])
#do something...
I alıyorum sorun "model_b_ids"
ileKullanıcı, posta verilerini gönderirken göndermelidir.İlgili modellere bağlantı oluşturmak için perform_create'de kullanıyorum.
Fakat bu, ModelA'da "gerçek sütun" değil, bu yüzden kaydetmeye çalıştığımda, istisna artar.
Ben validated_data pop denedim ama sonra tekrar model_b_ids modelinden okuyamayan bir yere hata alıyorum. Bu tür alanı doğru kullanmanın bir fikri var mı?
DRF'yi 3.1.3'ten 3.3.3'e güncelledim ve aniden Kullanıcılarımın parolaları geri gönderiliyordu (Write_only'nin Meta atribut'undan önce vardı). Çözümünüz bu sorunu giderir. Teşekkürler! – vabada