I want a Django URL with just 2 alternatives /module/in/
or /module/out/
I’m using
url(r'^(?P<status>w+[in|out])/$', 'by_status', name='module_by-status'),
But it matches other patterns like /module/i/
, /module/n/
and /module/ou/
.
Any hint is appreciated :)
Advertisement
Answer
Try r'^(?P<status>in|out)/$'
You need to remove w+
, which matches one or more alphanumeric characters or underscores. The regular expression suggested in bstpierre’s answer, '^(?P<status>w+(in|out))/$'
will match helloin
, good_byeout
and so on.
Note that if you use the vertical bar (pipe) character |
in your url patterns, Django cannot reverse the regular expression. If you need to use the url tag in your templates, you would need to write two url patterns, one for in
and one for out
.