Python 如何在django中对同一模板文件使用多个url。?

Python 如何在django中对同一模板文件使用多个url。?,python,django,url,Python,Django,Url,url.PY url(r'^shop.html$', views.alldress, name='alldress'), url(r'^shop.html$', views.cart ,name='cart'), url(r'^shop.html$', views.cartdata, name='cartdata'), 我想同时使用三个进程,那么如何在django中使用同一模板文件的多个url呢。如果有多个URL模式用于执行相同的操作,只需将它们全部连接到同一个视图函数,如下所示: url(r

url.PY

url(r'^shop.html$', views.alldress, name='alldress'),
url(r'^shop.html$', views.cart ,name='cart'),
url(r'^shop.html$', views.cartdata, name='cartdata'),

我想同时使用三个进程,那么如何在django中使用同一模板文件的多个url呢。如果有多个URL模式用于执行相同的操作,只需将它们全部连接到同一个视图函数,如下所示:

url(r'^shop/$', views.shop, name='shop'),
url(r'^cart/$', views.shop, name='cart'),
url(r'^cartdata/$', views.shop, name='cartdata')
如果希望URL模式执行不同的操作,但仍然呈现相同的模板,则可以在每个
view.py
函数中呈现该模板

# urls.py
url(r'^shop/$', views.shop, name='shop'),
url(r'^cart/$', views.cart, name='cart'),
url(r'^cartdata/$', views.cartdata, name='cartdata')

# views.py
def shop(request):
    context = {}
    ...
    return render(request, 'shop.html', context)

def cart(request):
    context = {}
    ...
    return render(request, 'shop.html', context)

def cartdata(request):
    context = {}
    ...
    return render(request, 'shop.html', context)

在本例中,三个views.py函数中的每一个都执行不同的操作,但它们都呈现相同的HTML文件,
shop.HTML

相同的模板文件?你可能指的是同一个URL,这毫无意义。如果用户访问
shop.html
,应该触发什么视图?如果这三个视图都应该启动,那么哪个视图应该响应?检查这是否有帮助-其想法是,您有一个URL视图,它返回响应,它当然可以调用实用程序函数(甚至其他视图),然后“合并这些”结果。不过,我想在这里,您可能希望生成一个页面,其中AJAX请求(例如)稍后加载
'cartdata'
。谢谢您的回答,但我只有一个html文件名为shop.html,我想在单个html文件中使用三种不同类型的视图函数谢谢您的回答,但我只有一个html文件名为shop.html我想在一个html文件中使用三种不同类型的视图函数..你可以!请查看我编辑的答案,以获得更充实的示例。这就是你要找的吗?可以有任意数量的Django视图返回相同的模板。