2011-02-02 89 views
0

當我從模型中獲取數據時,它會顯示錶格中的所有數據。Django表單queryset doudt

支持:我有表XYZ

class xyzform(forms.Form): 
    test=xyz.objects.filter(m='name').vlaues('doj') 

在HTML

{{form}} 

也不會輸出什麼,只提交按鈕顯示

如果我刪除vlaues( 'DOJ' ),它顯示所有的數據。

1.我的問題是,如何只顯示錶單中的特定字段?

2.另一個問題如何獲取remote.meta.get('remote_user')來查詢表單中的set filter?

例如:

name =remote.meta.get('remote_user') 
    test=xyz.objects.filter(m='name') 

請舉幾個例子,這將是容易理解回答......

+0

請張貼一些實際的工作代碼。這些都沒有任何意義 - 您不能隨意將查詢集對象放入表單中。 – 2011-02-02 17:31:08

回答

1

您需要閱讀從一開始就Django表單文檔瞭解如何使用表格框架。
http://docs.djangoproject.com/en/dev/topics/forms/

下面的例子將說明「它是如何工作的」(5分鐘)。

形式看起來更象這樣:

class XYZForm(forms.Form): 
    field = forms.CharField() 
    # forms only know how to display themselves with relevant 
    # forms.FOOField definitions. 

至於交接請求變量到表單中,你不得不重寫__init__這樣你就可以通過額外的參數到從您的視圖的形式構造。

class XYZForm(forms.Form): 
    field = forms.CharField() 

    def __init__(self, remote_user, *args, **kwargs): 
     super(XYZForm, self).__init__(*args, **kwargs) 
     # do something with remote_user 

# view 
form = XYZForm(remote_user = remote.meta.get('remote_user'))