我无法让我的 Django URL 工作

Posted

技术标签:

【中文标题】我无法让我的 Django URL 工作【英文标题】:I can't get my Django URLs to work 【发布时间】:2016-12-05 04:46:41 【问题描述】:

我的代码如下:

根 urls.py

from django.conf.urls import include, url
from django.contrib import admin


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include('app.urls')),
]

我的应用程序网址是这样的

urlpatterns = [
    url(r'^$',views.login, name='login'),
    url(r'^homepage/$', views.homepage, name='homepage'),
]

用户将看到的第一个屏幕是登录屏幕 (views.login)。目前我只想将登录按钮设置为将它们带到主页的网址(仅供练习),但它似乎不起作用。

登录html是这样的

<button type="button"><a href="% url 'homepage' %">Log-In</a></button>

这应该转到我上面的 urls 页面...找到名称“主页”并带我到 views.homepage 就是这样:

def homepage(request):
    return render(request, 'application/homepage.html', )

但是我的主页没有被渲染,我完全不知道为什么它让我发疯。

任何帮助将不胜感激。

【问题讨论】:

显示有错误吗? 没什么。就好像我只是放入了一个不是链接的按钮。如果我手动输入 URL,那么它会转到视图并正确呈现,所以这让我认为问题出在我的 login.html 页面中,而我没有正确编写 url。 问题在下面解决了。感谢您的帮助,但我的问题在于将按钮设为链接。这是一个纯粹的 html 问题。 【参考方案1】:

这与 Django 无关,而是纯粹的 HTML 问题。您不能在按钮内放置链接。按钮必须是表单的一部分,并提交给该表单的action 值。要么这样做,然后取出a 标签;或者,删除按钮,然后使用 a。

【讨论】:

以上是关于我无法让我的 Django URL 工作的主要内容,如果未能解决你的问题,请参考以下文章

我无法让我的 javascript 函数工作?

为啥无法访问 Django 基本 URL?

Django 使用 Slug 字段作为详细 URL

姜戈 |无法访问没有尾随“/”的 URL

我无法让我的 get 请求工作

我无法让我的 mySQL 删除命令工作