假設我有一個名爲app的Django應用程序。在它內部,我有一個在models.py命名數據中定義的模型類。另外,我在模板目錄中有一個html文件,它有幾個選擇列表,應該填充模型的字段,例如類型,日期。 我需要做的是獲取views.py中的字段列表,並使用它們填充選擇列表。另一件事是,在用戶通過在選取列表中選擇一個值來提交他們的查詢之後,我將向他們展示一個表格,顯示模型中所有字段的值。所以基本上我必須檢索用戶輸入的內容,並根據輸入進行查詢,並根據查詢獲取模型中所有字段的數據。我們可以命名另外兩個領域的時間,價值。這些東西應該主要在views.py中完成。如何從模型中獲取字段數據?
這裏是在HMTL文件中的選項列表:
<form action="" method="post">
<select name="type" values="type_data"></select>
<select name="date" values="date_data"></select>
<input type="submit" value="Submit">
</form>
我試了一下,兩個東西,有:
1.To獲取數據來填充料單,我用:
objects= data.objects.all()
type_data=getattr(objects, 'type')
date_data=getattr(objects, 'date')
2.To獲得數據的查詢後,我用:
if request.method == 'POST':
…
mytype = '% r' % request.POST.get['type']
mydate = ' %r ' % request.POST.get['date']
objects2= data.objects2.filter(type=mytype,date=mydate)
time=getattr(objects2, 'time')
value=getattr(objects2, 'value')
它不起作用。我參考這個鏈接django object get/set field,所以我基本上使用它來獲取模型的現場數據:getattr(obj, 'field_name')
有什麼想法?我感謝任何幫助
我試過這些代碼,但它沒有工作。它似乎並不認爲這_meta.fields的東西 – widget 2011-04-08 01:52:01
它總是爲我工作...... – 2012-10-04 16:57:56