1

我有这两个模型:

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.

问题是Service管理表单中的组合列表需要根据可用Work的 s进行验证,Event.您如何做到这一点?

我读过关于ModelChoiceField从查询集中创建一个,但这无济于事,因为在Event提交表单之前我们不知道它是什么。处理这个问题的最佳方法是什么?

4

1 回答 1

0

如果我理解正确,您可以在服务模型类上编写一个clean() 方法来进行自定义验证。

于 2012-05-12T15:03:17.277 回答