我无法在我的应用程序urls.py中映射我的“关于页面视图”

时间:2017-04-20 10:21:07

标签: python django django-views django-urls

我无法在我的应用程序urls.py文件中映射我的“关于页面视图”。 我试图在互联网上找到解决方案,但我不能。重新安装django,再次创建新项目,但同样的错误出现。

错误是:SyntaxError

我不知道我在哪里弄错了。请注意,我想将应用程序urls.py映射到另一个文件中。然后将应用程序urls.py文件加入项目的。

我的python版本是 2.7

我的django版 1.8

这是我的 views.py 文件。

from django.shortcuts import render
from django.http import HttpResponse


def index(request):
    return HttpResponse("Rango says hello world! <a href='/rango/about'> 
    About </a>")

def about(request):
    return HttpResponse("Rango Says: Here is the about page <a 
    href='/rango/'> Index </a>")

这是我的应用程序urls.py 文件。

from django.conf.urls import patterns, url
from rango import views


urlpatterns = patterns('',
        url(r'^$', views.index, name='index')
        urlr('^rango/about', views.about, name='about'))

这是我的项目urls.py 文件。

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

urlpatterns = [
   # Examples:
   # url(r'^$', 'projectX.views.home', name='home'),
   # url(r'^blog/', include('blog.urls')),

  url(r'^admin/', include(admin.site.urls)),
  url(r'^rango/', include("rango.urls"))
]

1 个答案:

答案 0 :(得分:0)

你有两个拼写错误。首先,您在url()个实例后缺少逗号(第一个实例需要它,强烈推荐第二个实例)。其次,对于第二种模式,您有urlr而不是url。它应该是:

urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
    url(r'^rango/about', views.about, name='about'),
)

作为进一步改进,您应该将urlpatterns更改为列表而不是使用patterns(),并将$添加到正则表达式的末尾以获取about页面。

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^rango/about/$', views.about, name='about'),
]

您的观点也存在问题。带双引号的字符串不应该有换行符。你应该有,

def index(request):
    return HttpResponse("Rango says hello world! <a href='/rango/about'>About </a>")

或将其更改为使用三重引号。

def index(request):
    return HttpResponse("""Rango says hello world! <a href='/rango/about'> 
    About </a>""")