संपादित करें: कृपया ध्यान दें, यह अब ऊपर Django के किसी भी संस्करण के लिए मान्य है 1.5
मुझे लगता है आप अगर फ़ाइल वास्तव में, मौजूद है सिर्फ एक वस्तु (जो सिर्फ एक सरल है अगर बयान)
सबसे पहले, मैं हमेशा की सिफारिश करेंगे Django के स्रोत कोड के माध्यम से देख नहीं है नहीं करता है, तो जाँच करने के लिए चाहते हैं, क्योंकि आप find some great code कर सकते हैं जो आप कर सकते हैं उपयोग करें :)
मुझे लगता है कि आप इसे एक टेम्पलेट के भीतर करना चाहते हैं। यूआरएल को प्रमाणित करने के लिए कोई अंतर्निहित टेम्पलेट टैग नहीं है लेकिन आप परीक्षण के लिए टेम्पलेट टैग के भीतर उस URLValidator
कक्षा का अनिवार्य रूप से उपयोग कर सकते हैं। सीधे शब्दों में:
from django.core.validators import URLValidator
from django.core.exceptions import ValidationError
validate = URLValidator(verify_exists=True)
try:
validate('http://www.somelink.com/to/my.pdf')
except ValidationError, e:
print e
URLValidator
वर्ग ValidationError
थूक से बाहर जब यह लिंक नहीं खोल सकता होगा। यह वास्तव में अनुरोध खोलने के लिए urllib2
का उपयोग करता है, इसलिए यह केवल मूल रेगेक्स जांच का उपयोग नहीं कर रहा है (लेकिन यह भी करता है।)
आप इसे एक कस्टम टेम्पलेट टैग में डाल सकते हैं, जिसे आप django दस्तावेज़ों में कैसे बनाना है, और तुम जाओगे।
आशा है कि यह आपके लिए शुरुआत है।
'verify_exists' [सुरक्षा के लिए हटा दिया] है (https://docs.djangoproject.com/en/1.4/ref /models/fields/#django.db.models.URLField.verify_exists) कारणों को डीजेगो 1.5 – Yohann
में हटा दिया गया है क्योंकि django 1.5, verify_exists तर्क को हटा दिया गया है/हटा दिया गया है, अब आप एक यूआरएल अस्तित्व के लिए सत्यापित नहीं कर सकते हैं, अब यह अभी वैध यूआरएल –
[इंटरनेट संग्रह में वंचित चेतावनी लिंक] के लिए एक सरल रेगेक्स मैच (https://web.archive.org/ वेब/20150907152504/https: //docs.djangoproject.com/en/1.4/ref/models/fields/#django.db.models.URLField.verify_exists) – luckydonald