2012-07-10 75 views
1

我想在Django admin的搜索表單中添加一些輸入。創建自定義Django管理搜索表單

我通過在原始'admin/search_form.html'的相關路徑中放置一個新模板來覆蓋原始模板。但是,當我在新模板中添加「選擇窗口小部件」時,如:{{ select_widget }}。它總是呈現爲<django.forms.widgets.Select object at 0x10f7560d0>。但是,如果我調用render()方法,它會呈現爲正確的html。

我怎樣才能讓小部件呈現爲正確的html?

回答

0

試試這個:

{{ select_widget.render }} 

Django Docs

技術上,當模板系統遇到一個點,它會嘗試 以下查找,順序如下:

  • 字典查詢
  • 屬性查詢
  • 方法調用
  • 列表索引查找

你所需要的就是3號 - 方法調用。

+0

謝謝。但是,渲染需要兩個參數:名稱,值。我如何將它們傳遞給它? – papalagi 2012-07-10 17:09:04

+0

'{{select_widget.render arg1 arg2}}' – Tisho 2012-07-10 17:09:59

+0

'{{select_widget.render None None}}'將導致'TemplateSyntaxError'消息'無法解析餘數:'無無'from'select_widget.render無無'' – papalagi 2012-07-10 17:12:50