django project avoid reload page where work algorithm

Xristos Xristoou saxri89 at gmail.com
Sat Oct 7 20:40:53 EDT 2017


I have a website where the user can be put three numbers on my html template and get some results from my personal mathematical algorithm. the result save at user personal table on my database and can see in specific tab in my website.
my problem is where the algorithm to calculate result maybe take time between 5-10 minutes in this time the browser stay on reload. if user change tab or close browser or maybe have problem with internet connection then loose that request and need again to put the numbers and again wait for results.
I want after the user request from my form in html to keep this request and work my algorithm without reload the page and where the algorithm finish then to send the user some email or message or just need the user visit the tab of results to see new results.
that I want to avoid the problems where the algorithm is in running and user loose data or request or time.
is easy to do that using suproccess,celery or RabbitMQ ?
any idea ?
here the code
views.py
def math_alg(request):
    if request.method == "POST":
        test = request.POST.get('no1')
        test = request.POST.get('no3')
        test = request.POST.get('no3')
        #start algorith
        calc_math(no1,no1,no3,result)
        instance = rmodel.objects.create(user=request.user,rfield=result)
        instance.save
    return render(request, 'page.html', {'result': result})
html :
<form action="" method="POST">{% csrf_token %}
  op math calculate:<br>
  <input type="number" name="no1" step="any" min="0" max="1" value="0.5">
  <input type="number" name="no2" step="any" min="0" max="1" value="9999">
  <input type="number" name="no3" step="any" min="0" max="1" value="1000000000000000">
<br>
  <input class="btn btn-primary" type="submit">
{{result }}
</form>



More information about the Python-list mailing list