python - django 无法读取我的正则表达式
问题描述
我制作了一个名为的应用程序videos
,它可以正常工作,但我想从videos
url 看起来像这样的页面 创建一个分叉页面videos/1,2,3,4,....
但我收到一个 404 错误,上面写着:
Using the URLconf defined in newproject.urls, Django tried these URL patterns, in this order:
1. videos/ [name='index']
2. videos/ ^(?P<quran_id>[0-9]+)$ [name='detail']
3. admin/
The current path, videos/1/, didn't match any of these.
我认为错误出现在前第二个 url 中,我认为 django 无法读取我的正则表达式。
那是我的视频/网址:
from django.urls import path
from django.conf.urls import url
from . import views
urlpatterns = [
path('', views.index , name='index'),
url(r'^(?P<quran_id>[0-9]+)$' , views.detail , name = 'detail'),]
感谢阅读
解决方案
/
您尝试获取的 URL 中有一个斜杠,但您videos/urls.py
不允许使用斜杠。
r'^(?P<quran_id>[0-9]+)/?$'
如果要在 URL中允许可选的尾部斜杠,则应将 URL 模式更改为。
推荐阅读
- python - 使用 rasterio 中的 WarpedVRT 来扭曲 geotiff 的问题
- c# - C# byte[] 和 char[] 格式的区别?
- python - 如何将数据帧传递给字符串并从中调用函数?
- proxy - 自动代理 pac 和有什么区别
- c# - 由 HtmlAgilityPack 解析的 HTML 文档返回 null
- forms - Symfony 中的自动页面返回链接
- math - 将vector(x,y,z)坐标转换为0到32767之间的整数
- objective-c - 如何检测到 watchOS 应用程序已终止?
- mysql - /writeReview/1 __str__ 处的 Django 模型 TypeError 返回非字符串(int 类型)
- angular - 初始加载后如何显示方向数据?