Regex django url

后端 未结 2 908
眼角桃花
眼角桃花 2021-02-13 02:37

Hello I have a url and I want to match the uuid the url looks like this:

/mobile/mobile-thing/68f8ffbb-b715-46fb-90f8-b474d9c57134/

<
相关标签:
2条回答
  • 2021-02-13 03:28

    Try this regex instead:

    \/mobile-thing\/(?P<uuid>.*)\/$
    

    So it'd be:

    urlpatterns = patterns("mobile.views",
        url(r'^$', 'something_cool', name='cool'),
        url(r'\/mobile-thing\/(?P<uuid>.*)\/$', 'mobile_thing', name='mobile-thinger'),
    )
    
    0 讨论(0)
  • 2021-02-13 03:37

    The [.*/] expression only matches one character, which can be ., * or /. You need to write instead (this is just one of many options):

    urlpatterns = patterns("mobile.views",
        url(r'^$', 'something_cool', name='cool'),
        url(r'^mobile-thing/(?P<uuid>[^/]+)/$', 'mobile_thing', name='mobile-thinger'),
    )
    

    Here, [^/] represents any character but /, and the + right after matches this class of character one or more times. You do not want the final / to be in the uuid var, so put it outside the parentheses.

    0 讨论(0)
提交回复
热议问题