2015-05-01 126 views
0

在管理後,纔有可能從現場輸入字段中的過濾器選擇:Django管理過濾數據選擇

class ReadtToday(models.Model): 
    author = models.ForeignKey(Authors)       # field 1) 
    book = models.OneToOneField(Books, related_name='bookofday') # field 2) 

現在在管理1)和2)得到了所有的列表他們的,我應該如何着手實現這個行爲:從現場1

選擇作者) 自動更新場2)名單與當前所選作者通過實地1只選擇數據 )。

class BooksList(admin.ModelAdmin): 
    def get_queryset(self, request): 
     qs = super(BooksList, self).get_queryset(request)   
     return qs.filter(HowCanIGetAuthor=from_input_of_field_1) 

是possbile應用領域1)選擇過濾使用raw_id_fields場2)?

+0

有可能使用Ajax請求的自定義視圖... 閱讀本http://bit.ly/1EIa7P8和這 http://stackoverflow.com/a/19910749/3033586 – madzohan

回答

0

最簡單的方法是實現筆者選擇與提交類型得到一個表格及支票的ModelAdmin類中的request.GET中

<form method="GET"> 
    <select name="author"> 
     <option>An author</option> 
    </select> 
</form> 

def get_queryset(self, request): 
    author = request.GET['author'] 
    qs = super(BooksList, self).get_queryset(request)   
    return qs.filter(author=author) 
+0

感謝您的意見!我可以在哪裏瞭解如何將這些表單屬性添加到管理表單字段? – summer

+0

在這裏檢查http://stackoverflow.com/questions/4794528/extending-django-admin-templates-altering-change-list – kmmbvnr