配置Django网址.py在URL重写后在URL中保留锚点/

2024-10-01 09:36:59 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的django应用程序中网址.PY配置为接受对/community/user/id和/community/user/id/的请求:

url(r'^(?P<username>[\w-]+)/(?P<cardId>\d+)/$', 'singleCard.views.singleCard', name='singleCardView'),

我这样做是因为有些时候人们会加上一个结尾“/”,我不想提高404。在

然而,我的javascript应用程序的某些部分有时会以以下形式添加锚定标记:

/community/user/id#anchorIuseInJavscriptToDoSomething

我遇到的问题是Django会立即将URL重写为:

^{pr2}$

以结尾/并移除“锚定”在AVSCRIPTODOSOmethoding中的

我想把它改写成:

/community/user/id#anchorIuseInJavscriptToDoSomething/

这样我在页面中的javascript仍然可以看到锚定并工作。如何调整此正则表达式来实现这一点?我不太擅长正则表达式,并通过实例学习了这一点。。。在


Tags: djangopycommunityid应用程序url结尾username
3条回答

可以将尾随斜杠设为可选:

url(r'^(?P<username>[\w-]+)/(?P<cardId>\d+)/?$', 'singleCard.views.singleCard', name='singleCardView'),

浏览器应该处理重定向后重新附加锚定的问题。你的问题与Django无关。在

为什么要将其更改为/community/user/id#anchorIuseInJavscriptToDoSomething/?这是无效的。它应该是/community/user/id/#anchorIuseInJavscriptToDoSomething。哈希后面的元素不是URL的一部分,不会发送到服务器。在

相关问题 更多 >