id,summary,reporter,owner,description,type,status,component,version,severity,resolution,keywords,cc,stage,has_patch,needs_docs,needs_tests,needs_better_patch,easy,ui_ux 18517,URLField does not support url with underscore,guoqiao,nobody,"if your url has a '_' in it, like this: * http://django_compressor.readthedocs.org/ the URLField will complain that it is not a valid url. the problem lies in the '_' symbol. I find in the source code as Following: {{{ class URLValidator(RegexValidator): 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 ip r'(?::\d+)?' # optional port r'(?:/?|[/?]\S+)$', re.IGNORECASE) }}} the related part is this line: {{{ r'(?:(?:[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?\.)+(?:[A-Z]{2,6}\.?|[A-Z0-9-]{2,}\.?)|' }}} It's clear that '_' is not included in the pattern. I think this is not reaonable for there's a lot of url has a '_' in it. ",Bug,closed,Core (URLs),1.6,Normal,wontfix,URLFiled,guoqiao,Unreviewed,0,0,0,0,1,0