Условно в хрустящих формах - PullRequest
0 голосов
/ 24 февраля 2020

На самом деле я пытаюсь выяснить, как создать условие для поля на странице HTML. У меня есть форма, в которой я хочу визуализировать поле, если пользователи запрашивают «веб-приложение» в поле выбора выше. Но у меня две проблемы. Сначала форма «conditionnalWeb» отображается перед формой «typeOfTheProject». Во-вторых, я много чего перепробовал, но так и не сработало. Это, вероятно, простое решение, но я впервые работаю с django и хрустящей формой.

Вот форма:

class ConfiguratorForm(forms.Form):
    queryOfProject = TypeOfProgram.objects.values_list('name')
    queryOfFramework = Framework.objects.values_list('name','version')
    queryOfDatabase = Database.objects.values_list('name','version')
    listFramework = []
    listProject = []
    conditionnalWeb=[]
    listFramework=[((q[0],q[1]),q[0]+" version "+q[1])for q in queryOfFramework]
    listProject=[(q[0],q[0])for q in queryOfProject]
    listDatabase = [((q[0],q[1]),q[0]+" version "+q[1])for q in queryOfDatabase]

    typeOfTheproject = forms.ChoiceField(choices = listProject)
    conditionnalWeb = forms.ChoiceField (choices = [('', '----'),("Only Backend","Only Backend"),("Only Frontend","Only Frontend")])
    wantedFramework = forms.MultipleChoiceField(choices = listFramework)
    wantedDatabase = forms.MultipleChoiceField(choices = listDatabase)

Вот HTML:

{% extends 'forms/base.html' %}

{% load crispy_forms_tags %}

{% block content %}

    <form method="post">
    {% csrf_token %}
    {{form|crispy}}
    <button type="submit" class="btn btn-success">Save configuration</button>
    </form>
    {% endblock %}
</html>

Я оставил легкий {{form|crispy}}. Все остальные стратегии, которые я пробовал, не работали и не были «красивым» кодом.

Спасибо всем за помощь.

...