• Как во flask отправить данные на сервер с htm документа при нажатии на кнопку не отправляя форму?

    @ragq1991
    Пример рабочего кода на JS, из моего проекта, для асинхронной отправки запроса на сервер с ожиданием ответа.

    <script>
            async function returnPaid(id, what_do){
    ------------------- начало фигни
                if (what_do == 'delete'){
                  if (!confirm('Вы действительно хотите удалить запись?')){
                    return;
                  };
                }
                if (what_do == 'undone'){
                  if (!confirm('Вы действительно хотите отменить проведение?')){
                    return;
                  };
                }
                if (what_do == 'unpaid'){
                  if (!confirm('Вы действительно хотите отменить оплату?')){
                    return;
                  };
                }
    ------------------- конец фигни
                const body = JSON.stringify({
                        "id": id,
                        "do": what_do,
                    })
                const response = await fetch('/api/v1/', {
                    method: "POST",
                    headers: {"X-CSRFToken": csrftoken, "Content-Type": "application/json", "Accept": "application/json"},
                    mode: "same-origin",
                    body: body
                })
                const data = await response.json();
                if (data.status_code == 200){
    ------------------- начало фигни
                  if (what_do == 'paid' || what_do == 'unpaid'){
                    btnToggle(id, what_do, data.sum_paid);
                  } else if (what_do == 'done' & data.auto_paid) {
                    btnToggle(id, 'paid', data.sum_paid);
                    btnToggle(id, what_do);
                  } else {
                    btnToggle(id, what_do);
                  };
    ------------------- конец фигни
                } else if (data.status_code == 400){
                  alert(data.message);
                };
            }
        </script>


    фигню не стер что был пример кода на JS, раз Вы написали " (но я полный ноль в JS) ".
    Ответ написан
    Комментировать
  • Как сделать что бы после отправки формы со страницы, после ручного обновления страницы повторно повторно не отправлялась форма с данными?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    После обработки формы делайте редирект на другую страничку методом get (например на страничку с подтверждением - "все прошло ок, данные загружены"...).
    У вас же вроде реализована переадресация обратно на формуredirect(url_for('add_slab')), но в форме не выводится флш месадж через get_flashed_messages(), который сетится в обработчике - flash('Сляб добавлен к карте заказа', 'info')
    Ответ написан
    Комментировать
  • Почему не подтягивает данные в форму выбора Flask?

    ramzis
    @ramzis
    FullStackOverflow
    Почему не подтягивает данные в форму

    Потому что, `db.session.query(Clients).all()` вызываеться один раз, после определения класса.

    Решение.
    ...
    form=AddOrder()
    form.client_id.choices = [(client.id, (client.first_name, client.last_name, client.phone_number)) for client in (db.session.query(Clients).all())]
    ...
    Ответ написан
    1 комментарий
  • Нужна альтернативу PyQt и желательно Веб, что посоветуете изучить или на что обратить внимание?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Необходимый минимум:
    1. Изучаешь общие принципы работы сетей в целом и протокола http в частности.
    2. Изучаешь html и css.
    3. Изучаешь язык запросов SQL, принципы работы реляционных баз данных и какую-нибудь конкретную СУБД.
    4. Изучаешь Django.


    Кроме этого желательно:
    • Освоить администрирование Linux.
    • Настройку wsgi- и web-серверов.
    • Изучить JavaScript, в идеале с фронтовым фреймворком.


    А электрон этот ваш, во-первых, к web- разработке не относится, а во-вторых, мерзкий костыль, на котором можно разработать только говно.
    Ответ написан
    4 комментария
  • Как найти экстремальные значения списка (не максимального и минимального значения в списке) а последовательных экстремальных значений макс/мин?

    Vindicar
    @Vindicar
    RTFM!
    Т.е. для каждого максимума нужно найти такой последующий минимум, чтобы разница между максимумом и минимумом была наибольшей, так? И затем нужно найти наибольшую из всех таких разниц, и соответствующие ей элементы?
    Я бы сделал это примерно так. Не уверен, что сработате сразу, но надеюсь что идея передана.
    equity_result1 = [ ... ]  # твои данные - значения эквити во времени
    # определяем индексы таких элементов, которые больше своих соседей слева и справа.
    local_max_idx = [ i for i in range(1, len(equity_result1) - 1) if equity_result1[i-1] < equity_result1[i] and equity_result1[i+1] < equity_result1[i] ]
    # определяем минимумы для интервалов, следующих за соотв. локальным максимумом
    local_min = [ min(equity_result1[i+1:]) for i in local_max_idx ] 
    # определяем индексы этих минимумов в списке equity_result1 
    local_min_idx = [ i+1+equity_result1[i+1:].index(minval) for i, minval in zip(local_max_idx, local_min) ] 
    # собираем сведения о "перепадах" в один список пар индексов (максимум, минимум)
    differences = list(zip(local_max_idx, local_min_idx))
    # ищем наибольший "перепад" по критерию "разность между значением максимума и минимума"
    i_max, i_min = max(differences, key = lambda item: equity_result1[item[0]] - equity_result1[item[1]])
    # интересующий тебя интервал - между i_max и i_min включительно


    Не сообразил сразу, но код кривой - если у тебя искомый максимум это начальный элемент equity_result1, код его не увидит.
    Ответ написан
    Комментировать