因爲我已經開始使用django。現在我想用django-sitetree通過我的模型創建一個導航欄。但是我對sitetree的定義有問題。例如,我想創建以下菜單結構:需要幫助如何使用django-sitetree管理配置
maintree
|
|-- Media
| |-- Movies
| | |-- Life of Pi
| | |-- Django unchained
好的。所以,我有以下創建簡單的模型:
class Movies(models.Model):
title = models.CharField(max_length=50)
爲了測試sitetree我添加的數據通過Django管理站點設置,如「Pi的生活」。
但是,現在我試圖從https://django-sitetree.readthedocs.org/en/v0.9/quickstart.html獲得啓動文檔,並修改了我的模型。
Django管理網站,我有執行下列步驟內幕:
- 首頁> Sitetree - >添加站點樹
- 標題= maintree
- 別名= maintree
- 首頁> Sitetree>網站樹> maintreeHome> Sitetree>網站樹> maintree - >添加網站樹項目
- 父=無父(------)
- 標題=媒體
- URL = /考試
- 首頁> Sitetree>網站樹木> maintreeHome> Sitetree>網站樹木> maintree - >添加站點樹項目
- 父=媒體
- 標題=#電影{{movie.id}}
- URL =電影詳細movie.title
- 「其他設置」:選中「網址爲模式」已被設置得
好了,下一步就是編寫一個看起來像這樣的base.html文件:
{% load sitetree %}
<!DOCTYPE html>
<html>
<head><title>My test template</title></head>
<body>
<b>Sitetree menu</b>
{% sitetree_tree from "maintree" %}
<b>Breadcrumbs</b>
{% sitetree_breadcrumbs from "maintree" %}
</body>
</html>
我的網址是這樣的:
from django.conf.urls import patterns, url
from exam.views import IndexView, DetailedMovie
urlpatterns = patterns('',
url(r'^$', IndexView.as_view()),
url(r'^(?P<movie_title>\S+)/$', DetailedMovie.as_view(), name='movie-detailed'),
)
而且這樣的觀點:
class DetailedMovie(TemplateView):
template_name = "index.html"
def get(self, request, *args, **kwargs):
print 'DetailedMovie ---------------------'
print args
print kwargs
return render(request, 'index.html')
的問題
最後我的問題是,結果是不同的,那麼我期望的。我只看到媒體和電影#,但沒有看到電影數據(餡餅和Django的生活解開了)。通過檢查視圖得到什麼作爲參數kwargs結果:{'movie_title':u'movie.title'}。
所以現在我不知道什麼是錯的。我希望有人可以幫助我解決這個問題,或者建議我使用另一個應用程序或方法來獲得帶有面包屑的導航樹。
感謝