Django模型,ModelForm和验证

时间:2011-03-10 06:55:33

标签: django django-models django-forms

对于以下型号:

#models.py
class entry(models.Model):
    title = models.CharField(max_length=25)
    image = models.ImageField(upload_to="/",blank=True)
    video_url = models.CharField(max_length=150,blank=True)

我希望模型和相应的ModelForm只允许 image字段或video_url字段,但两者。

这是如何最好地完成的?我是否需要验证模型,模型或两者?

1 个答案:

答案 0 :(得分:-1)

在您的表单中,您可以使用:

def clean(self):
    cleaned_data = self.cleaned_data
    m_image = cleaned_data.get('imagee')
    m_video_url = cleaned_data.get('video_url')

    if (m_image and m_video_url): 
        raise forms.ValidationError("Both video url and image sumbitted")

    return cleaned_data
相关问题