1

私はこれらの2つのモデルを持っています:

class Service(MelosModel):
    performer = models.ForeignKey(Performer)
    event = models.ForeignKey('Event')
    composition = models.ForeignKey(Composition)


class Event(MelosModel):
    event_type = models.ForeignKey('EventType')
    project = models.ForeignKey(Project)
    works = models.ManyToManyField(Work)
    date_of_event = models.DateTimeField()
    location = models.ForeignKey(Address)

注: AMelosModelは、すべての意図と目的で と同じmodels.Modelです。また、Composition拡張しWorkます。

問題は、管理フォーム内のコンポジションのリストを、使用可能なsServiceに対して検証する必要があることです。WorkEvent.

クエリセットからを作成することについて読みましたが、フォームが送信されるまで がModelChoiceField何であるかがわからないため、それは役に立ちません。Eventこれに対処する最善の方法は何ですか?

4

1 に答える 1

0

私の理解が正しければ、Service モデル クラスにclean() メソッドを記述して、カスタム検証を行うことができます。

于 2012-05-12T15:03:17.277 に答える