Использование условия if с полем выбора django в шаблонах - PullRequest
0 голосов
/ 02 октября 2018

Я хочу условно отобразить поля формы в шаблоне django.Я использую текущее значение поля выбора следующим образом.Однако я не вижу, что это работает должным образом, и в теге <p> ничего не отображается.

В модели:

PENDING = 'PEN'
CONFIRMED = 'CFM'
CANCELED = 'CAN'
CHOICE_BOOKING_STATUS = (
    (PENDING, 'Pending'),
    (CONFIRMED, 'Confirmed'),
    (CANCELED, 'Canceled'),
)

booking_status  = models.CharField(max_length=4,
                  choices=CHOICE_BOOKING_STATUS, 
                  default=PENDING)

В шаблоне:

{% extends parent_template|default:"booking/base_booking.html" %}
{% block title %}{{ block.super }} - Update booking Details{% endblock title %}

{% block header %}<h1>Update Booking</h1>{% endblock header %}

{% block content %}
<form action="{{ booking.get_update_url }}" method="POST">
    {% csrf_token %}
    <table>{{ form.as_table }}</table>
    <button type="submit" class="btn btn-primary">Update Details</button>
    <a href="{% url 'booking_list' %}">Cancel</a>

    {% if form.booking_status.value == CHOICE_BOOKING_STATUS.PENDING %}
        <p>Please make a payment to confirm booking.</p>
    {% endif %}

</form>
{% endblock content %}
...