Django запуск скрипта с помощью кнопки on и остановка с помощью кнопки off в представлении

Я новичок в django, и я мучаюсь прямо сейчас, я не могу найти решение для вывода формы с данными, которые пойдут в скрипт python, импортированный как класс, в основном, этот процесс для бота фрилансера, который будет вести поиск проекта, соответствующего тегам навыков, и затем делать ставки на него, все данные я предоставляю с помощью формы, и когда я нажимаю кнопку "запустить бота", скрипт будет продолжать работать, пока не будет нажата другая кнопка "остановить бота", я представил похожую ситуацию, соответствующую реальной проблеме, для лучшего понимания вопроса, html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <form action="{% url 'bid_func' %}" method="post">
        {% csrf_token %}
        {{ form.as_p }}
        <button value="run-script">Run Bot</button>
        <button value="stop-script">Stop Bot</button>
    </form>
</body>
</html>

форма есть

    amount = forms.FloatField()
    interval = forms.IntegerField()  
    max_bid = forms.IntegerField()

как показано ниже, если запрос является post и run-script в данных запроса, он начнет выполнение данных, переданных скрипту, а когда будет нажата кнопка stop-script, он остановит процесс,

def bid_func(request):
    form = BidBot()
    if request.method == 'POST':
        form = BidBot(request.POST)
        if 'run-script' in request.POST and form.is_valid():
            amount = form.cleaned_data['amount']
            interval = form.cleaned_data['interval']
            max_bid = form.cleaned_data['max_bid']
            form.save()
            bid = bid(amount, interval, max_bid)
            bid.bidding()
        elif 'stop-script' in request.POST:
            #stop the script
    return render(request, 'exam/bid_page.html', context={'form': form})

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

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