在本地django内,匹配机制是完全正常的,代码为:
# 项目urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('Jordread/', include('Jordread.urls')),
] + static('/upload/', document_root=settings.MEDIA_ROOT)
#应用urls.py
urlpatterns = [
path('index/', views.IndexView.as_view(), name='index'),
path('library/', views.LibraryView.as_view(), name='library'),
path('recommondbook/', views.RecommondView.as_view(), name='recommond'),
path('hotbook/', views.HotbookView.as_view(), name='hotbook'),
path('booklist/(?P<pk>\d+)/', views.BookListView.as_view(), name='booklist'),
path('book/(?P<pk>\d+)/', views.BookView.as_view(), name='book'),
path('chapter/(?P<pk>\d+)/', views.ChapterView.as_view(), name='chapter'),
path('search/', views.search, name='search'),
]
部署到iis上之后,像index,hotbook这类不需要正则匹配的就能打开,要正则匹配的就打不开了
djano报错为:
Page not found (404)
Request Method: GET
Request URL: http://localhost:8001/Jordread/book/(
Using the URLconf defined in coread.urls, Django tried these URL patterns, in this order:
admin/
Jordread/ index/ [name='index']
Jordread/ library/ [name='library']
Jordread/ recommondbook/ [name='recommond']
Jordread/ hotbook/ [name='hotbook']
Jordread/ booklist/(?P<pk>\d+)/ [name='booklist']
Jordread/ book/(?P<pk>\d+)/ [name='book']
Jordread/ chapter/(?P<pk>\d+)/ [name='chapter']
Jordread/ search/ [name='search']
^upload/(?P<path>.*)$
The current path, Jordread/book/(, didn't match any of these.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
用的数据库是sqlite3,恳请大神解答,相关的资料太少了
CSS和静态目录都已经设置好了,不用页面寻址的网页都正常,调用正则和数据库的网页就404