Проблема при создании формы с виджетами django-autocomplet-light и bootstrap-datepicker-plus - PullRequest
0 голосов
/ 31 октября 2019

Я пытаюсь создать форму, которая использует два разных виджета:

- some fields are using django-automplete-light ModelSelect2 widget
- another field is using bootstrap_datepicker_plus DatePickerInput widget

Однако мне не удается заставить их работать одновременно: когда я создаю форму только с DatePickerInput, календарь показываетправильно, но когда я добавляю поля с помощью ModelSelect2, календарь больше не всплывает.

Кто-нибудь знает, что может вызвать эту проблему и как ее решить?

В settings.py я установил'include_jquery' = True для BOOTSTRAP4 Ниже приведен фрагмент кода формы:

from django.forms import ModelForm
from dal import autocomplete
from bootstrap_datepicker_plus import DatePickerInput

class CreateWhoForm(ModelForm):

    class Meta:

        model = m.Who
        fields = (
            'why',
            'how',
            'begins'
        )
        widgets = {
            # when 'why' and 'how' are commented, DatePickerInput() calendar widget shows correctly
            # when they are present, the calendar widget doesn't show anymore
            'why': autocomplete.ModelSelect2(
                url='core:why-autocomplete'
            ),
            'how': autocomplete.ModelSelect2(
                url='core:how-autocomplete'
            ),
            'begins': DatePickerInput()
        }

и некоторые из используемых HTML:

<code><pre>
{% load static %}
{% load bootstrap4 %}
{% bootstrap_css %}
{% bootstrap_javascript jquery='full' %}

{{ form.media }}

{% for field in form %}
    <div class="form-group{% if field.errors %} has-error{% endif %}">
    <label for="{{ field.id_for_label }}">{{ field.label }}</label>
    {% render_field field class="form-control" placeholder=field.help_text %}
    {% for error in field.errors %}
       <p class="help-block">{{ error }}</p>
    {% endfor %}
    </div>
{% endfor %}

...