0
をデシリアライズするためにはどのように既存のユーザーを検索し、それらがまだ存在しない場合は、1つを作成し、「招待」と呼ばれるモデルがあります:ジャンゴ・休憩・フレームワーク - カスタムネストされたフィールド
from django.contrib.gis.db import models
from users.models import CustomUser
class Hangout(models.Model):
name = models.CharField(max_length=255)
class InviteManager(models.Manager):
def create_invite(self, hangout, phone):
(user, did_create) = CustomUser.objects.get_or_create(phone=phone)
invite = self.create(status=status, hangout=hangout, arrival_time=arrival_time, user=user)
return invite
class Invite(models.Model):
hangout = models.ForeignKey(Hangout, on_delete=models.CASCADE, related_name='invites')
user = models.ForeignKey(CustomUser)
objects = InviteManager()
私が午前のそれをデシリアライズするのに苦労します。私はこのポストの要求にネストされた招待状でハングアウトを作成したいと思います:
{ 'name': 'Bobs House',
'invites': [
{ 'phone': '5127914819', 'name': 'Bob1' },
{ 'phone': '0000000000', 'name': 'Bob2' },
{ 'phone': '0000000001', 'name': 'Bob3' },
{ 'phone': '0000000002', 'name': 'Bob3' },
{ 'phone': '0000000003', 'name': 'Bob4' }
]
}
私は携帯電話が存在し、10桁の長さであることを確認するために招待シリアライザをしたいです。私は一連のシリアライザを動作させるために多くの問題を抱えています。私は、ソリューションhereとhereの組み合わせを試しましたが、ネストされたデシリアライザとカスタム作成フィールドの組み合わせは、モデルにはまったくありません。どんな助けでも大歓迎です!ありがとう