我的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
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将所有三个defs考虑在内,并将所有三个defs呈现在同一页面上?
答案 0 :(得分:0)
您需要使用不同的URL路径。这就是为什么它不起作用。您拥有通往所有这些人的相同路径。
views.py
def chart(request):
#fusionchart code
context = {
'output' : column2D.render(),
'output2' : doughnut3d.render(),
'output3' : area2D.render(),
'today': today,
'mapbox_access_token': mapbox_access_token
}
return render(request, 'dash.html', context)
urls.py
urlpatterns = [
url(r'^$', views.chart, name='chart'),
]