I have this form and custom widget
class BidDateWidget(widgets.DateInput): """ Renders a Twitter Bootstrap Date Input. """ class Media: css = ("{{ STATIC_URL }}stylesheet/datetimepicker.css") js = ("{{ STATIC_URL }}js/bootstrap-datetimepicker.js") def render(self, name, value, attrs=None): if value is None: value = '' final_attrs = self.build_attrs(attrs, type="text", name=name) if final_attrs.get('class'): final_attrs['class'] = final_attrs['class'] + ' input-small' if final_attrs.get('disabled'): datepicker_css_class = 'input-append' else: datepicker_css_class = 'input-append date' # only add value attribute if value is non-empty final_attrs['value'] = value html = ''' <div class="span3"> <h5>Bid Ending Date</h5> <div class="{1}" id="datetime1" data-date-format="mm-dd-yyyy"> <input{0} /> <span class="add-on"> <i class="icon-th"></i> </span> </div> </div> ''' return mark_safe(html.format(flatatt(final_attrs), datepicker_css_class)) class BidTimeWidget(widgets.TimeInput): """ Renders a Twitter Bootstrap Date Input. """ class Media: css = ("{{ STATIC_URL }}stylesheet/bootstrap-timepicker.min.css") js = ("{{ STATIC_URL }}js/bootstrap-timepicker.min.js") def render(self, name, value, attrs=None): final_attrs = self.build_attrs(attrs, type="text", name=name) final_attrs['class'] = "input-small time" final_attrs['id'] = "datetime2" final_attrs['type'] = "text" if value is None: final_attrs['value'] = '' else: final_attrs['value'] = datetime.datetime.strptime(value, "%H:%M %p").time() timepicker_css_class = 'input-append' html = ''' <div class="span4 pull-right"> <h5>Bid Ending Time</h5> <div class="{1} bootstrap-timepicker"> <input {0}/> <span class="add-on"> <i class="icon-time"></i> </span> </div> </div> ''' return mark_safe(html.format(flatatt(final_attrs), timepicker_css_class)) class BidSplitDateTime(forms.SplitDateTimeWidget): """ A SplitDateTime Widget that has some admin-specific styling. """ def __init__(self, attrs=None): widgets = [BidDateWidget,BidTimeWidget] # Note that we're calling MultiWidget, not SplitDateTimeWidget, because # we want to define widgets. forms.MultiWidget.__init__(self, widgets, attrs) def format_output(self, rendered_widgets): return mark_safe(u'%s %s' % \ (rendered_widgets[0], rendered_widgets[1])) class BidCreateForm(forms.ModelForm): required_css_class = 'required' def __init__(self, *args, **kwargs): user = kwargs.pop('vehicles_available') super(BidCreateForm, self).__init__(*args, **kwargs) self.fields['vehicles_available'].queryset = CarrierVehicle.objects.filter(carrier__user=user) self.fields['vehicles_available'].help_text = None class Meta: model = Bid exclude = ('created_on', 'created_by', 'created_from', 'last_modified_on', 'last_modified_by', 'last_modified_from', 'job', 'accepted', 'spam', ) fields = ('one_liner', 'quote_price', 'message', 'vehicles_available','bid_ending_in' ) widgets = { 'one_liner': forms.TextInput(attrs={'class': 'span8'}), 'quote_price': forms.TextInput(attrs={'class': 'span10'}), 'message': forms.Textarea(attrs={'class': 'span10', 'rows': '6'}), 'vehicles_available' : forms.CheckboxSelectMultiple(), 'bid_ending_in' : BidSplitDateTime() } Thing is whenever I am posting this form, it goes to form-invalid, and returns this error <ul class="errorlist"><li>bid_ending_in<ul class="errorlist"><li>Enter a valid date/time.</li></ul></li></ul> Any Help? Mrinmoy Das http://goromlagche.in/ -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at http://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAFWA-MOMkHHOeaCBJJd_n_wnBp3zqCth2SRa0duUmDEmtGP_tw%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.