2012-08-14 38 views
1

我正在研究一個基於Django的應用程序,並且我卡在某個地方,我想要保存用戶給出的時間以及我的數據庫中沒有天(星期一至星期天)。如何使用Django模板中的時間選取器小部件?

用戶會選擇從Time picker widget或任何其他方式的時刻,但它返回到07 : 30格式。

用戶還可以從任何選擇器或任何其他方式(用戶可以選擇多天)選擇一天,它會保存到數據庫中。

我與Django的示範場試圖通過把:

timestamp = Models.DatetimeField() 

,並通過使用Django的模型形式Django的模板,但它顯示一個文本字段(沒有任何意義)。

如果,無論如何將有可能獲得一次13:45格式和mon,tue,wed格式,然後我也可以將它保存到CharField()數據庫。

我無法弄清楚以上兩種情況的解決辦法。什麼是最好的選擇呢?

應該可以使用Java腳本嗎? (但我不是專業的Java腳本)

+0

看着日期時間部件的Django文檔它將是一個文本框。 https://docs.djangoproject.com/en/1.4/ref/forms/widgets/#datetimeinput但是你可能會研究modernizer以及一些html5的東西來獲取日期時間選擇器。 DatetimeField只是一個類,允許對數據進行一些驗證,並有一個對象來執行有趣的編程任務。 – percent20 2012-08-14 20:06:27

+0

什麼時候選擇任何時間選擇器,這個選擇器是用java腳本構建的 – 2012-08-14 20:09:14

回答

1

要使用小工具,你應該指出的形式類模型什麼的部件是:

from django import forms 

class MyModelForm(forms.ModelForm): 
    timestamp = forms.DateField(widget=forms.DateInput(attrs={'class':'timepicker'})) 

如果您使用的時間戳屬性該模型像一個基本的Python日期時間類一樣運行,並且具有許多與您將在其中找到的屬性相同的屬性。如果時間戳的格式是什麼讓你感到困擾,你可以看看Django用於顯示時間和日期時間字段的過濾器:https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date

我不確定爲什麼你需要保存特定格式的時間戳; Django的日期時間字段非常強大並且易於使用。

+0

我試着用你給定的代碼,但是它顯示了一個文本框。我想要的是,如果用戶不知道格式,那麼他將如何輸入時間。在數據庫中? – 2012-08-14 20:19:45

+0

@AmitPal嘿艾米特,不要忘了添加此JS代碼在您的模板:'\t jQuery的(文件)。就緒(函數(){。 \t \t的jQuery( 'timepicker')日期選擇器(); \t} );' – Hafiz 2012-09-09 00:33:46

+0

@AmitPal顯然你將需要導入該jquery小部件jquery文件 – Hafiz 2012-09-09 00:39:01

相關問題