2013-03-20 41 views
2

我想用這個daterange picker我的Django項目Django和日期Twitter的引導

問題範圍選取器組件是,我不知道我必須在服務器端(Django的)呢?

可能會創建某種小部件?

可能是子類widgets.MultiWidget?

我認爲這個小部件必須像兩個DateTimeFields?

這是可能與Django?

+0

你只需要在你的表單定義ID – catherine 2013-03-20 08:38:07

回答

2

鑑於例如輸出

MM/DD/YYYY - MM/DD/YYYY 

這是將張貼到你的觀點是什麼。我只會自己處理這個問題,而不是使用Django表單,並將其存儲在兩個DateField中。沿此線的東西:

date_range = request.POST['date_range'] 
start_date_string = date_range.split(' - ')[0] 
end_date_string = date.range.split(' - ')[1] 

這將讓你你需要的,然後只是簡單地將它們傳遞到DateFields並保存兩個字符串。

5

我不得不這樣做;所以我在這裏分享代碼。它基本上重新使用Django DateField

class DateRangeField(forms.DateField): 
    def to_python(self, value): 
     values = value.split(' - ') 
     from_date = super(DateRangeField, self).to_python(values[0]) 
     to_date = super(DateRangeField, self).to_python(values[1]) 
     return from_date, to_date 

date_range = DateRangeField(required=False, 
          widget=forms.TextInput(attrs={'placeholder': _('from'), 
                  'class': 'form-control datepicker'}))