2012-01-10 27 views
0

我想要計算django admin change_form.html模板中基於用戶登錄填充的選項值數量。即。登錄超級用戶將獲得外鍵下拉列表中所有項目的計數,而部門成員將從相關外鍵的下拉列表中填充項目(即外鍵值實例的子集)。這怎麼能實現?我曾嘗試 代碼片段:獲取django change_form.html模板下拉列表中填充選項的數量

{% ifequal username 'departuser1' %} 
    {%ifequal field.field 'department1'%} 
     {{ field.field_set|length }}  #or even 
     {{field.field.option_set.all|length }} #or even 
     {{ field.field_set.all }} #or even 
     {{ field.field.value_set.all|length }} 
    {% endifequal %} 
{% endifequal %} 

請幫助。我總是得到0值

回答

0

在change_form.html模板使用JavaScript如下:

{% if adminform and add %} 
<script type="text/javascript"> 
    var department_count = document.getElementById("{{ adminform.form.department.auto_id }}"); 
    alert(department_count) 
</script> 
{% endif %} 

這會給已根據登錄動態填充選項列表。 請注意檢查是否計數的空值。