【问题标题】:Django query is not reaching to the the pageDjango 查询未到达页面
【发布时间】:2021-11-17 21:13:27
【问题描述】:

我想在我现有的项目中添加一个联系人 html 页面。我将html页面放在主页已经驻留的模板中。现在,我在项目级目录中添加了一个联系人 url,将查询定向到应用级 url。此应用级别在视图中具有联系功能。我也设置了应用程序级别的网址,但联系链接没有响应。在调试中显示 200 ok 状态。有人可以指出我做错了什么吗??? 这是项目级别的 url 文件

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('articles.urls')),
    path('contact', include('articles.urls')),
]

这是应用级别的 url 文件

urlpatterns = [
    path('', views.articles, name='articles'),
    path('', views.contact, name='contact'),
]

这是一个视图函数,其中一个函数正在返回文章页面,但另一个函数没有响应

def articles(request):
    return render(request, 'articles/home.html')

def contact(request):
    return render(request, 'articles/contact.html')

【问题讨论】:

  • 您创建了两条具有相同模式的路径,因此如果您访问/,它将触发articles 视图,而不是contact 视图。

标签: django django-views django-urls


【解决方案1】:

在调试中显示 200 ok 状态。有人可以指出我做错了什么吗?

您使用空字符串定义了两条路径。它们分别发射articlescontact。由于首先指定了articles,因此如果您访问“主页”,它将触发articles 视图。

每个 HTTP 请求只会触发 一个 视图,并且该视图会产生一个 HTTP 响应。因此,如果您想添加一些东西来联系某人,那么您应该更改 articles 视图,或者使用另一个会触发 contact 视图的路径。

【讨论】:

    【解决方案2】:

    您不能为 2 个视图提供 2 个路径,因此您需要更改 url 路径,如果您在 articles app 的 @987654322 上同时拥有文章和联系人视图,则可以执行以下操作@文件。

    项目级urls.py

    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('articles.urls')),
    ]
    

    应用级urls.py

    urlpatterns = [
        path('article/', views.articles, name='articles'),
        path('contact/', views.contact, name='contact'),
    ]
    

    现在您可以使用127.0.0.1:800/article/ 来查看文章,使用127.0.0.1:800/contact/ 来查看联系人。

    【讨论】:

      猜你喜欢
      • 2021-10-13
      • 2021-01-28
      • 2019-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-04
      • 1970-01-01
      • 2013-06-08
      相关资源
      最近更新 更多