2012-01-08 17 views
15

Django URL alanı için geçerli değerler nelerdir?Bir django URL alanı için geçerli değerler nelerdir?

Yalnızca http URL kaynakları için mi yoksa daha geniş bir aralığı destekliyor mu? örn. ssh, rsync, git vb.

Geçerli Git URL'sini düşündüğüm şeyi koymayı denedim ve başarısız oldu.

Kullanımdan kaldırılan doğrulama_existlerini kullanmıyorum çünkü kaynağın var olup olmadığını farketmez.

cevap

14

Yalnızca http (s) ve ftp (ler) 'e izin verir. Bu, URL'leri django.core.validators.URLValidator:

regex = re.compile(
    r'^(?:http|ftp)s?://' # http:// or https:// 
    r'(?:(?:[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?\.)+(?:[A-Z]{2,6}\.?|[A-Z0-9-]{2,}\.?)|' # domain... 
    r'localhost|' # localhost... 
    r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|' # ...or ipv4 
    r'\[?[A-F0-9]*:[A-F0-9:]+\]?)' # ...or ipv6 
    r'(?::\d+)?' # optional port 
    r'(?:/?|[/?]\S+)$', re.IGNORECASE) 
doğrulamak için kullanılan normal ifadedir.
İlgili konular