首页 > 解决方案 > Python - Django 为模板的多个视图添加多个 urlpatterns

问题描述

我对 Python 3 和 Django 非常陌生,我遇到了以下问题:我使用标准模板,现在当有 1 个视图时如何设置它。但是我没有为多个视图获得正确的代码。我目前在本地运行页面

目前,我试图在 urlpatterns 中更改不同的顺序,当只有 1 个 url 时它们确实有效,但我无法获得第二个

视图.py

from django.shortcuts import render, render_to_response

# Create your views here.
def index(request):
    return render_to_response('index.html')

def store(request):
    return render_to_response('store.html')

网址.py

from django.conf.urls import include, url
from django.contrib import admin
from myapp import views as views
from django.contrib.staticfiles.urls import staticfiles_urlpatterns



urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^store/$', views.store, name='store'),
    url(r'^admin/', admin.site.urls)
]
urlpatterns += staticfiles_urlpatterns()

我想要让我转到索引视图和商店视图的 url 模式

编辑:完整代码通过以下方式共享:https ://github.com/lotwij/DjangoTemplate

标签: djangopython-3.xdjango-templatesurl-pattern

解决方案


评论中的错误表明你要去http:/127.0.0.1:8000/store.html,但你的 URL 模式url(r'^store/$', ...)不包括.html,所以你应该去http:/127.0.0.1:8000/store/

Django URL 系统将 URL 与模板名称分离(有时视图甚至不呈现模板!)。r'^store.html$如果你真的想要.html在 URL 中,你可以将正则表达式更改为,但我发现没有扩展名的 URL 更清晰。


推荐阅读