我是django的新手,我一直在尝试测试URL重定向方法,我尝试了两个选项,但返回render()总是给我一个没有反向匹配的错误
这是我的urls.py代码:
app_name = 'blog'
urlpatterns = [
# path('about', views.about, name = 'about'),
path('about.html', views.about, name='about'),
path('home.html', views.home, name='home'),
# path('home', views.home, name ="home")
path('redirect', views.redirect_view),
path('redirection_fct',views.redirection_fct, name='redir_fct'),
#redirection par la fonction as_view
path('redirect1', RedirectView.as_view(url='http://127.0.0.1:8000/blog/redirection_fct')),
path('redirect2', views.redirect_view1),
]这是我的视图文件:
def about(request):
return render(request, 'about.html', {})
def home(request):
return render(request, 'home.html', {})
#redirection par HttpResponseRedirect
def redirect_view(request):
return HttpResponseRedirect("redirection_fct")
def redirect_view1(request):
return redirect('redir_fct')
def redirection_fct(request):
return render(request, 'redirection.html', {})我的URL模式有什么问题吗?还是渲染错误?
发布于 2022-04-10 18:57:40
这是你应用程序上的urls.py吗?如何将其包含到项目urls.py中,如果您有一个名称空间,那么您可能需要如下所示:
def redirect_view1(request):
return redirect('blog:redir_fct')您可以尝试从django shell运行:
from django.urls import get_resolver
print(get_resolver().reverse_dict.keys())https://stackoverflow.com/questions/71819596
复制相似问题