2012-08-10 27 views
27

Django यूआरएल ढांचा एक नंबर पैरामीटर है जो:Django यूआरएल ढांचा नहीं - स्ट्रिंग पैरामीटर

url(r'^polls/(?P<poll_id>\d+)/$', 'polls.views.detail') 

क्या सही सिंटैक्स होगा अगर मेरी poll_id एक नंबर लेकिन चरित्र की एक स्ट्रिंग नहीं है?

उत्तर

27

इस बात पर निर्भर करता है कि आप किस पात्रों की परवाह करते हैं। the docs की तरह, \w आपको अल्फान्यूमेरिक कैरेक्टर या अंडरस्कोर देगा।

+1

धन्यवाद आदमी! मैंने इसका उपयोग करने की कोशिश की है जिसे मैं नहीं जानता था। फिर से धन्यवाद। – rechie

22

यूआरएल में एक स्ट्रिंग पैरामीटर होने के लिए आप कर सकते हैं: यूआरएल इस तरह: की तरह नोड js आदि

0

तार:

url(r'^polls/(?P<string>[\w\-]+)/$','polls.views.detail') 

यह भी अनुमति देगा स्लग तार जैसे पारित करने के लिए यदि आप Django संस्करण> = 2.0 का उपयोग कर रहे हैं, तो यह बस नीचे की तरह किया जाता है।

from django.urls import path  

urlpatterns = [ 
    ... 
    path('polls/<string>/$','polls.views.detail') 
    ... 
] 

स्रोत: https://docs.djangoproject.com/en/2.0/ref/urls/#django.urls.path

संबंधित मुद्दे