使用正则表达式创建包罗万象的url()条目

所以我在开发人员中使用Django和React URL路由的问题为零,但是现在我试图进入生产阶段,遇到了各种各样的问题。


是的,涉及到正则表达式时,我很烂。看起来就像只猫在键盘上走路。绝对是我需要坐下来并致力于学习的东西。


在开发人员中,我最擅长的是以下完美工作的工具:


url(r'', TemplateView.as_view(template_name='index.html')),

在生产中,我得到了Uncaught SyntaxError: Unexpected token <。正如向我解释的那样,这与JS被捕获在URL中而不是index.htmlJS需要“通过”有关。有人告诉我尝试:


url(r'^$', TemplateView.as_view(template_name='index.html')),

这行得通。Web应用程序已加载,我能够进行导航。


但是,当涉及到验证电子邮件链接时,出现了另一个问题。我Page not found (404)遇到的问题又不是我的开发设置中的问题。


电子邮件链接如下所示:


https://test.example.com/auth/security_questions/f=ru&i=101083&k=6d7cd2e9903232a5ac28c956b5eded86c8cb047254a325de1a5777b9cca6e537


我得到的是:


Page not found (404)

Requested URL: http://test.example.com/auth/security_questions/f%3Dru&i%3D101083&k%3D6d7cd2e9903232a5ac28c956b5eded86c8cb047254a325de1a5777b9cca6e537/


我的反应路线如下:


<App>

    <Switch>

        <Route exact path='/auth/security_questions/f=:f&i=:id&k=:key' component={SecurityQuestions} />

        <Route exact path='/auth/*' component={Auth} />

        <Route exact path='/' component={Auth} />

    </Switch>

</App>

这应该渲染/auth/security_questions/...路线。


另外,authentication.urls:


urlpatterns = [

    url(r'^security_questions/', SecurityQuestionsAPIView.as_view(), name='security_questions'),

]

似乎Django正在尝试处理路由,显然没有匹配的路由,实际上它应该只是呈现index.html并让其react-router-dom接管以将请求从FE发送到API。因此,看来我需要做一个让JS顺利通过的包罗万象的东西。


我遇到了一个似乎相关的问题:反应路由和django url冲突。因此,我添加了以下内容,以使我有一个“/抓手”,然后“抓紧一切”。


# match the root

url(r'^$', TemplateView.as_view(template_name='index.html')),

# match all other pages

url(r'^(?:.*)/?$', TemplateView.as_view(template_name='index.html')),

仍然不会呈现验证链接。对最后捕获的所有URL进行了其他尝试:


url(r'^', TemplateView.as_view(template_name='index.html')),


结果是 Uncaught SyntaxError: Unexpected token <


url(r'^.*', TemplateView.as_view(template_name='index.html')),


因此,我们将深入研究Django,正则表达式,并尝试对其进行梳理,但与此同时...


我在这里做错了什么?


牛魔王的故事
浏览 215回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python