Need to render same html for all Users of a particular page

I have a page which is showing the progress of my local database getting synchronized with database stored on the cloud(As backup DB). it takes times like 10-15 mins for synchronization. Is it possible to show that same progress page to all the users and machines if they visit it when the synchronization is going on? like if I use my laptop and start syncing DB it will show progress continuously, then I use my other laptop and visit the synchronization page it should show the same progress as shown by my first laptop.
is it possible ?

In theory, yes. The specifics are going to vary based upon the details of the process.

“Showing progress continuously” - could most easily be done by having the page auto-refresh every 5 seconds or so.

Are you starting the synchronization through a view, or are you running it some other way?

Do you have programmatic access to the progress statistics?

Yes, I am starting synchronization through a view function and send/receiving one table at a time (for each table I can start process individually but currently I have automated one table after another) I also have programmatic access to the progress statistics.

So yes, create a view that displays the current status and have it refresh every 5 - 10 seconds. Anyone going to that page would see that status.

well the problem is that when anyone visits that page it show default page like synchronization has not even started. its like it doesn’t know that sync is going on in background.

I’m not talking about your existing view. I’m saying you need to create a new view that obtains the progress information and displays it.

okay i will try it.
Thank You…

KenWhitesell i tried it no luck it shows progress on one device but not on other. I think my view function in not able to identify that i has already received post request from other machine.


@login_required
@allowed_users(allowed_roles=['admin'])
def data(request):
    grp = request.user.groups.values_list()
    if request.method == "POST":
        return StreamingHttpResponse(DataComputing())
    else:
        context = {"grp_name":grp[0][1],}
        return render(request,'sheetg/dataentry.html',context)

There isn’t going to be a POST on this second view - that’s not it’s purpose.

The whole idea of this second view is that, by going to it, will display the current status, and that’s all. It’s a GET-only view.