Django URLConf与有效的regex不匹配

2024-10-03 11:12:36 发布

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

我对Django有个大问题。我不能让正则表达式匹配 在网址.py. 你知道吗

以下是我正在做的:

在我的javascript中

var source = 'http://127.0.0.1:8000/quiltmaker/block'+i+'/shoefly'+i+'/';

记录为

img.src http://127.0.0.1:8000/quiltmaker/block3/shoefly3/

我的模式是:

   urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
    url(r'^about/$', views.about, name='about'),
    url(r'block(\d{1,3})/([a-z]{7})(\d{1,2})/$', views.block),
)

regex在iPython解释器中工作:

js = 'block3/shoefly3/'

r = re.compile(r'block(\d{1,3})/([a-z]{7})(\d{1,2})/$')

r
Out[60]: re.compile(r'block(\d{1,3})/([a-z]{7})(\d{1,2})/$')

m = r.search(js)

m
Out[62]: <_sre.SRE_Match at 0x10f262ae0>

m.span()
Out[63]: (0, 16)

但Django从不称之为观点。你知道吗

如果urlpattern是

url(r'block(\d{1,3})/shoefly(\d{1,2})/$', views.block)

请帮忙。这让我比现在更疯狂。你知道吗


Tags: djangonamerehttpurlindexjsout
1条回答
网友
1楼 · 发布于 2024-10-03 11:12:36

感谢彼得·德格洛珀为我指明了正确的方向。urlconf没有将我发送到视图,因为视图需要两个参数,而我发送了三个参数。在视图中添加另一个parmeeter可以实现以下目的:

之前

def block(request, idx, blockno)

之后

def block(request, idx, type, blockno)

相关问题 更多 >