来自QuerySet的Django Admin Form验证

时间:2012-05-11 21:54:36

标签: django django-forms django-admin django-validation

我有这两个模型:

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)

注意:MelosModel的所有意图和目的与models.Model相同。此外,Composition扩展了Work

问题是,Service管理员表单中的作品列表需要根据其Work的可用Event.进行验证吗?

我读过关于从查询集中创建ModelChoiceField但是这没有用,因为在提交表单之前我们不知道Event是什么。解决这个问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

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

相关问题