0

これが私がやろうとしていることです:

ユーザーがアプリケーションでイベントを作成します。モデルは次のとおりです。

class Event(models.Model):
    name = models.CharField(max_length=40)
    organizer = models.ForeignKey(UserProfile)
    description = models.TextField(null=True)
    place = models.TextField(null=True)
    confirmed = models.BigIntegerField(null=True)
    organizer_part = models.BooleanField(default=True)
    slug = models.SlugField()

その直後に、このイベントに招待されたさまざまな人々と、ユーザーが選択したさまざまな日付を投稿します。モデルは次のとおりです。

class EventDate(models.Model):
    """Correspondances date-event"""
    event = models.ForeignKey(Event)
    date = models.BigIntegerField()


class EventPeople(models.Model):
    """Correspondances personne-event"""
    event = models.ForeignKey(Event)
    phone_number = models.PositiveIntegerField()
    name = models.CharField(max_length=32)
    answer = models.BooleanField()
    participation = models.NullBooleanField()

この 3 つのモデルを 1 回のリクエストで埋めたいと思います。これまでのところ、3 つの要求を行う必要があります。どうすればそれができるのかわかりません。

どんなアイデアでも大歓迎です。

4

1 に答える 1

0

モデルで動作するリソースは次のとおりです。

class EventResource(ModelResource):
    event_dates = fields.ToManyField(EventDateResource, 'event_dates')
    event_peoples = field.ToManyField(EventPeopleResource, 'event_peoples')
    class Meta:
          queryset = Event.objects.all()

また、単純な EventDateResource と EventPeopleResource を作成する必要があります。

Yout モデルにもう 1 つ変更を加えると、 related_names を追加する必要があります。

class EventDate(models.Model):
    """Correspondances date-event"""
    event = models.ForeignKey(Event, related_name='event_dates')
    date = models.BigIntegerField()


class EventPeople(models.Model):
    """Correspondances personne-event"""
    event = models.ForeignKey(Event, related_name='event_peoples')
    phone_number = models.PositiveIntegerField()
    name = models.CharField(max_length=32)
    answer = models.BooleanField()
    participation = models.NullBooleanField()
于 2013-04-21T00:12:32.270 に答える