Python Django视图仅呈现第一个URL
我的Django应用程序中有以下代码: View.pyPython Django视图仅呈现第一个URL,python,django,Python,Django,我的Django应用程序中有以下代码: View.py def Chart(request): #fusionchart code return render(request, 'dash.html', {'output' : column2D.render(),'output2' : doughnut3d.render(),'output3' : area2D.render()}) def view_name(request): #calculation code ret
def Chart(request):
#fusionchart code
return render(request, 'dash.html', {'output' : column2D.render(),'output2' : doughnut3d.render(),'output3' : area2D.render()})
def view_name(request):
#calculation code
return render(request, 'dash.html', {'today': today})
def default_map(request):
#map built code
return render(request, 'dash.html',
{ 'mapbox_access_token': mapbox_access_token })
url.py
urlpatterns = [
url(r'^$', views.Chart, name = 'Chart'),
url(r'^$', views.view_name, name = 'view_name'),
url(r'^$', views.default_map, name="default"),
]
我目前遇到的问题是,urlpatterns只显示/呈现在第一个def中所做的事情(在本例中为def图表),而跳过其他两个def
我如何确保Django考虑到所有三个def并在同一页面上呈现所有这三个def?您的URL需要有不同的路径。这就是它不起作用的原因。你有相同的路径去访问所有的人 views.py def chartrequest: fusionchart代码 上下文={ “输出”:column2D.render, “output2”:doughnut3d.render, “output3”:area2D.render, "今天":今天,, “mapbox\u访问\u令牌”:mapbox\u访问\u令牌 } 返回renderrequest,'dash.html',上下文 url.py URL模式=[ urlr'^$',views.chart,name='chart', ]
是的,因为我希望它们呈现在同一页上。当我改变URL时,我只剩下三个不同的URL而不是一个。所以基本上你想在同一个模板中呈现这些值?可以在单个视图中将值添加到上下文中。这就是你想要的吗?我最好澄清一下,在你的问题上,这正是我想要做的,我已经在我的问题中提到过。为什么你希望Django从一个url模式运行所有三个视图?Django只运行第一个匹配的url模式。@xyres:我不知道