39
你有一个接受的Django一个first_name
和last_name
网址:制作一个正则表达式的Django URL令牌可选
('^(?P<first_name>[a-zA-Z]+)/(?P<last_name>[a-zA-Z]+)/$','some_method'),
你会如何包括title
可选URL标记,没有创建任何新的线路。我的意思是,在一个理想的方案:
#A regex constant
OP_REGEX = r'THIS IS OPTIONAL<title>[a-z]'
#Ideal URL
('^(?P<first_name>[a-zA-Z]+)/(?P<last_name>[a-zA-Z]+)/OP_REGEX/$','some_method'),
这是可能的,而无需创建即
('^(?P<first_name>[a-zA-Z]+)/(?P<last_name>[a-zA-Z]+)/(?P<title>[a-zA-Z]+)/$','some_method'),
新行
谢谢你。我将如何制作一个只有可选'标题'的URL?即?(?:/(?P [a-zA-Z] +))?(?:/(?P [a-zA-Z] +))?'感谢您的任何帮助 –
Federer
2010-02-24 15:19:01
请注意, :在外部组中很重要。没有它,URL会在导航时正常工作,但reverse()不会注意到内部的参数。 – Chris 2013-01-28 19:56:04
反向使用此操作失败,创建了2个url ... – radtek 2014-08-18 20:51:39