首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django在Nginx服务器上没有反向匹配

问Django在Nginx服务器上没有反向匹配
EN

Stack Overflow用户
提问于 2018-07-10 10:10:18
回答 1查看 93关注 0票数 0

我正在尝试建立一个简单的博客应用程序的ubuntu滴托管在数字海洋。

我有一个正在开发中的DJango应用程序,我得到了一个存在的视图的No reverse match

下面是错误:

代码语言:javascript
复制
'NoReverseMatch at / Reverse for 'post_detail' not found. 'post_detail' is not a valid view function or pattern name.'

以下是我的Url模式:

代码语言:javascript
复制
from . import views

urlpatterns = [
        url(r'^$', views.post_list, name='post_list'),
        url(r'^post/(?P<pk>\d+)/$', views.post_detail, name='post_detail'),
]
~

这是我的观点

代码语言:javascript
复制
from django.shortcuts import render, get_object_or_404

def post_list(request):
    posts = Post.objects.filter(published_date__lte=timezone.now()).order_by('published_date')
    return render(request, 'blog/post_list.html', {'posts': posts})

def post_detail(request, pk):
    post = get_object_or_404(Post, pk=pk)
    return render(request, 'blog/post_detail.html', {'post': post})
~

下面是我的nginx文件:

代码语言:javascript
复制
server {
listen 80;
server_name XXX.XXX.XXX.XXX;

location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
    root /home/XXXX/Django;
}

location / {
    include proxy_params;
    proxy_pass http://unix:/home/XXX/Django/BizBlog.sock;
}
}

错误发生在哪里?我不知道这是怎么回事,我以前用过Django,我知道这跟我的view函数中的url搜索字符串模式有关,虽然找不到,但这个函数就在那里。怎么啦?

下面是我的主url.py:

代码语言:javascript
复制
from django.contrib import admin
from django.urls import path
from django.conf.urls import include
from django.conf.urls import url

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'', include('blog.urls')),
]
EN

回答 1

Stack Overflow用户

发布于 2021-01-19 23:33:10

只需停止django开发服务器进程,在linux上重启services waitress,在windows/linux上重启nginx。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51256330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档