2011-06-06 24 views
0

我知道這是一個新手問題,但是,我想在我自己的一個模板中呈現模型的表格列表視圖。在我自己的模板中使用Django管理列表視圖?

它似乎應該是一個不需要從管理界面拿起窗體而不是寫我自己的窗體。我在這裏得到了錯誤的想法嗎?

像往常一樣,文件似乎把我到目前爲止並...

如果這是一個明智的做法我怎麼做呢? 如果不是 - 是否有好的片段可用?

回答

5

我在Django開始思考django-admin的一切時犯了錯誤。嘗試將管理員視爲「僅另一個應用程序」。你想做什麼?你只是想列出特定模型的對象嗎?如果是的話,那是很容易把它手動編寫:

views.py

def list_objects(request): 
    return simple.direct_to_template(request, 
     template='folder/templ.html', 
     extra_context={ 
      "objects" : MyModel.objects.all().order_by('some_field') 
     }) 

templ.html

... 
<ul> 
    <li> 
     {{ object.title }} 
    </li> 
</ul> 

在另一方面,如果你想添加的功能像添加/刪除/編輯對象那麼它會更復雜一點。您需要爲您的模型創建表格以及其他幾個視圖來處理不同的任務。

Django試圖通過提供這些重複產品來讓生活更輕鬆generic_views。看看雖然,你會看到他們需要寫一些CRUD(創建,更新刪除)接口等痛苦

+0

謝謝pastylegs - 我想呈現與過濾和排序對象的列表視圖就像在管理員。看起來這些元素可以從管理員那裏解除 - 或者我可以找到一個我可以插入到我的應用程序?我對django早期與其他框架相比的經歷感到非常興奮,但我仍然在尋找開發模式等。 – Dizzley 2011-06-07 20:19:21

相關問題