मेरे पास ऐसा कोई मामला है जहां मैंने कुछ Django url पैटर्न परिभाषित किए हैं और अब मैं किसी दिए गए पैटर्न से जुड़े नियमित अभिव्यक्ति को पुनर्प्राप्त करना चाहता हूं। मैं चाहता हूं क्योंकि मैं क्लाइंट को इन नियमित अभिव्यक्तियों को पास करना चाहता हूं, इसलिए मैं क्लाइंट में यूआरएल भी देख सकता हूं (मैं ब्राउजर साइड हिस्ट्री मैनिपुलेशन के बारे में बात कर रहा हूं) और एक मैच होने पर उपयुक्त हैंडलर (जावास्क्रिप्ट में) आग लगाना।Django नाम से यूआरएल रेगेक्स प्राप्त करें
उदाहरण के लिए अगर मेरे पास है:
# urls.py
urlpatterns = patterns("",
url(r"^$", Index.as_view(), name="index"),
url(r"^user/", include("User.urls", namespace="User")),
)
# User/urls.py
urlpatterns = patterns("",
url(r"^profile/(?P<slug>.*)$", GetProfile.as_view(), name="get_profile")
)
तो मैं निम्नलिखित समारोह की जरूरत है:
>>> get_regex("User:get_profile")
'^user/profile/(?P<slug>.*)$'
(या Django इसकी अनुवाद हालांकि)। ध्यान दें कि मैं नामस्थान का उपयोग कर रहा हूं। कोई विचार? Django1.5।
इसके अलावा मैंने एक ऐसा फ़ंक्शन लिखने में कामयाब रहा है जो उत्तीर्ण नाम से जुड़े urlpattern ऑब्जेक्ट को लौटाता है, हालांकि url.regex.pattern
'^profile/(?P<slug>.*)$
देता है। तो जैसा कि आप देख सकते हैं कि कोई अग्रणी नहीं है।
आप views.py का एक टुकड़ा यह उपयोगी हो सकता है – drabo2005
@ drabo2005 कैसे मददगार होगा दिखा सकते हैं? सामग्री अप्रासंगिक है। – freakish
@freakish बस एक सूचक: यदि आप 'dgeango.core.urlresolvers.py' में' RegexURLResolver' कक्षा को देखते हैं, तो इसकी एक 'reversed_dict' संपत्ति है। इसमें वह पैटर्न होना चाहिए जिसे आप ढूंढ रहे हैं। लाइन 385, एक ही फाइल पर एक नज़र डालें। – Germano