django条件网址verify_exists

时间:2011-09-20 07:46:38

标签: python django django-models

我的模型中定义了3个url字段,如下所示:

image_1 = models.URLField(max_length=100, verify_exists=True, blank=True)
image_2 = models.URLField(max_length=100, verify_exists=True, blank=True)
image_3 = models.URLField(max_length=100, verify_exists=True, blank=True)

我的问题是,有没有办法可以测试verify_exists是否会返回TrueFalse,如果是,请根据输出采取措施?

2 个答案:

答案 0 :(得分:5)

django做的是使用the URLValidator查看网址是否有效。 您可以使用django.core

中的相同验证

修改 例如,假设您必须验证带有URL https://www.djangoproject.com/的django官方网站是否存在。代码看起来像这样:

from django.core.validators import URLValidator
from django.core.exceptions import ValidationError


my_url_validator = URLValidator(verify_exists=True) #creates a URLValidator object with verify_exists.
my_url = "https://www.djangoproject.com/" #url to be verified   

#check if url is valid :)
try:                           
   my_url_validator(my_url) 
except ValidationError:
   #not valid!! :_( 
   #fix: custom stuff to the rescue :)     
   CustomStuff()...

答案 1 :(得分:0)

以下链接可以帮助您理解:

https://docs.djangoproject.com/en/dev/ref/validators/