2013-06-04 63 views
0

嗨我正在嘗試實現編輯頁面,該頁面接受對象的ID並加載其所有原始值& &啓用編輯/更新。 e.g如何在HTML日期輸入類型中顯示對象的日期屬性作爲默認值

文本類型,我用

<label>Field1:</label> 
    <input type="text" id="id_field1" value='{{ objectInstance.filed1}}' name="field1"/> 

爲Textares

<label>Field2:</label> 
    <textarea id="id_field2" name="field2"> 
     {{ objectInstance.field2}} 

他們都在加載實例的原始數據,並允許編輯工作的罰款。但對於日期字段,我無法找出如何加載它.. 我想是這樣

<label>Deadline:</label> 
      <input type="date" id="id_deadline" name="deadline" value={{objectInstance.deadline}}> 

(截止日期爲日期數據類型如2013年6月4日)的

任何人都可以幫助解決這個問題?非常感謝。

+0

你的意思是你想在你的頁面中的日期字段?如果是的話,爲什麼你不使用jQuery。 –

+0

是啊,最初有一個type =「date」的輸入類型,所以我剛剛使用它,現在我發現很難加載一些日期數據並將其顯示爲默認值。 – Mona

+0

@MayankJain有三種方法可以做到這一點嗎?或者我已經在錯誤的方向並顯示默認值在這裏是不可能的。非常感謝幫助 – Mona

回答

0

您可以使用基於UpdateView泛型類以簡化這個過程。類似的問題是answered before

的另一種方法來解決,這是使用一個ModelForm,並用一個實例的預加載。這實際上是什麼呢UpdateView,但如果你不希望使用基於類的觀點,這裏是另類:

在你forms.py

from django import forms 
from someapp.models import SomeModel 

class SomeModelForm(forms.ModelForm): 
    class Meta: 
     model = SomeModel 

在你views.py

def someview(request): 
    obj = SomeModel.objects.get(pk=1) # Fetch the object to be edited 
    form = SomeModelForm(instance=obj) # Load the form with the object's data 
    return render(request, 'edit.html', {'form': form}) 

edit.html

<form method="POST"> 
{% csrf_token $} 
{{ form }} 
<input type="submit"> 
</form> 

T他會自動創建表格,並使用模型中的數據填寫表格。您仍然必須編寫邏輯以更新視圖中的記錄。

+0

非常感謝,非常短的代碼!讓框架處理它。非常感謝 – Mona

相關問題