我試圖像Django的顯示菜單/子菜單
Menu1
Menu2
SubMenu1
SubMenu2
SubMenu3
Menu3
SubMenu4
SubMenu5
SubMenu6
Menu4
以表格的形式顯示菜單和子菜單到目前爲止,我能想出下面的代碼,但它沒有顯示任何記錄。
Views.py
def getCompleteMenuList():
return Menu.objects.getMenuListing(id)
#mainMenuObj=Menu.objects.getMenuListing(id)
return render_to_response('manageMenu.html', {'title': menu_title,'name':name,'mainMenu':getCompleteMenuList,},context_instance=RequestContext(request))
Models.py
def getMenuListing(self, id):
mainMenus = self.filter(parent_menu=0,business=id).order_by('order')
result = []
menus = []
for menu in mainMenus:
menus.append(menu)
submenu = self.filter(parent_menu=menu,business=id).order_by('order')
if submenu.exists():
result.append(submenu)
return dict(zip(menus, result))
template.html
{% with mainMenu.items as pop_menus %}
{% for key, value in pop_menus %}
display main menu rows
{% for data in value %}
display sub menu rows
{% endfor %}
{% endfor %}
{% endwith %}
現狀我具有與4表5行作爲parent_menu = 0和1作爲parent_menu = 1(存在)。
當我嘗試打印mainMenus的show 4菜單對象。
< Menu: Menu object >, < Menu: Menu object >, < Menu: Menu object >, < Menu: Menu object >
但是當我打印菜單裏面的for循環,只打印1個菜單對象 菜單對象
能否請您指教一下我做錯了或有任何其他方式來達到同樣的事情?
任何建議,我怎麼能在這裏實現解決方法?因爲按照要求,我可能有菜單子菜單。 –