django-bootstrap-datepicker-plus
django-bootstrap-datepicker-plus copied to clipboard
DatePicker not showing in modal form
Describe the problem When I try to use the datepicker in a modal form, the calendar doesn´t show, but if I go to a commom form the widget shows.
Console errors
- No error on django console.
- No error on JavaScript console.
Paste-bin
forms.py class EtapasForm(PopRequestMixin, CreateUpdateAjaxMixin, forms.ModelForm): class Meta: model = etapas fields = ['etapa','responsavel', 'data_in', 'data_fim', 'horas', 'Obs', ] data_in = forms.DateField( widget=DatePickerInput(format='%d/%m/%Y') )
view.py class EtapaCreateView(PassRequestMixin, SuccessMessageMixin, generic.CreateView): template_name = 'etapas/create_etapa.html' form_class = EtapasForm success_message = 'Etapa criada!'
def get_form(self):
form = super().get_form()
form.fields['data_in'].widget = DatePickerInput()
return form
def form_valid(self, form):
#widgets = {'data_in': form.DateInput(attrs={'class': 'datepicker'})}
#form.instance.sequencia = etapas.objects.get(id = self.kwargs['pk_proc']).aggregate(Max('sequencia')).sequencia + 1
try:
etapa_temp= etapas.objects.filter(pai = self.kwargs['pk_proc']).order_by('-sequencia')[0]
form.instance.sequencia = etapa_temp.sequencia + 1
except:
form.instance.sequencia = 1
form.instance.pai = processos.objects.get(id = self.kwargs['pk_proc'])
return super(EtapaCreateView, self).form_valid(form)
def get_context_data(self, **kwargs):
context = super(EtapaCreateView,self).get_context_data(**kwargs)
context['pai'] = self.kwargs['pk_proc']
return context
def get_success_url(self):
return reverse_lazy('etapas' , kwargs={'pk': self.kwargs['pk_proc']})
create_etapa.html {% load widget_tweaks %}
{% load bootstrap3 %} {# import bootstrap4/bootstrap3 #} {% bootstrap_css %} {# Embed Bootstrap CSS #} {% bootstrap_javascript jquery='full' %} {# Embed Bootstrap JS+jQuery #}
Setup Information (please complete the following information):
- OS: . Windows 10
- Browser chrome
- Browser version
- Python version 3.7
- Django version 2
- Bootstrap version 4
- jQuery version 1.7.1
[x] I have followed the configuration instructions and checked out the common error troubleshooting page.
- If it does not show up, there should be errors in browser console.
- When you are using model form you don't need to override
get_form
method of your view. - In model form you have to set widget like this.
I think that the modal form is hidding the datepicker...