Динамическое изменение значений на основе выбранной пользователем опции django

Я пытаюсь изменить значение на основе курса обмена, выбранного пользователем в теге <option>. Я не хочу сохранять результат формы в базе данных. Я просто хочу, чтобы он динамически изменялся каждый раз, когда пользователь меняет валюту.

Допустим, пользователь выбирает валюту из следующей формы с опциями в представлении:

VIEW

def view(request):

   currency_dict = {'EUR': 0.9154994049253867, 'JPY': 123.86706948640484, 'BGN': 1.7905337361530713, 'CZK': 22.375720955781375}

   cur = currency_dict.items()

   deposit = 10000

   context = {
   'currency_dict': currency_dict,
   'cur': cur,
   'deposit': deposit,
   }

   return render(request, 'coinprices/my-dashboard.html', context)

HTML - ФОРМА

<div class="container">
    <div>
        <span>
    <h1>My Dashboard</h1>
        </span>
        <span>
            <label>Choose Currency:</label>
            <input list="ex-currency">
            <datalist id="ex-currency">
            {% for k, v in cur %}
                <option value="{{ k }}"></option>
            {% endfor %}
            </datalist>
        </span>
    </div>
</div>

Затем, основываясь на выборе пользователя, умножьте значение {{ deposit }} на currency_dict[user_selected_currency] и измените полужирный текст (см. ниже):

ЖЕЛАЕМЫЙ РЕЗУЛЬТАТ

<span>
   <div><b>Total Investment {{ user_selected_currency }}</b></div>
   <span class="text-xl">${{ deposit * currency_dict[user_selected_currency] }}</span>
</span>

Есть идеи, как этого можно достичь?

К сожалению, это невозможно сделать с помощью функции render Вам понадобится запрос GET с помощью ajax, когда пользователь меняет значение, а затем вы можете вызвать функцию, основанную на опции пользователя и вернуть правильный ответ пользователю Это называется "Chained Dropdown List" Я нашел эту удивительную статью, которая, возможно, поможет вам Как реализовать зависимый/цепочечный выпадающий список с помощью Django

Вернуться на верх