2011-06-07 97 views
0

使用日曆應用程序,並希望每個事件模型實例都有一個{allday | start,end}字段被填寫。也就是說,輸入的是全天字段,或者是開始+結束字段,但不是兩者。是否可以在Django中對模型字段進行分組?

我該如何建模並讓它在管理應用程序中正常工作?我希望有一個小組需要。

回答

3

創建的所有3場模型,並重寫清潔方法(驗證模型時調用)來檢查你的條件:

def clean(self): 
    if not self.allday: # allday not present 
     if not self.start or not self.end: # start and/or end not present 
      raise ValidationError('error message...') 
    else: 
     if self.start or self.end:  # allday present but also start and/or end 
      raise ValidationError('error message...') 

更多信息cleanModel.clean()

+0

謝謝,給它一試。 – 2011-06-07 23:57:15

+0

看起來不錯,再次感謝。 – 2011-06-08 04:58:01

相關問題