Buttons aren’t clicked in a Django view. Buttons are clicked on a web page.
That click can cause the button to issue an http request.
The url in that request is looked up in the urls.py files to find the appropriate view.
The view is called with the request as a parameter.
The view returns a response.
The browser is responsible for handling that response.
So any html that results in the generation of a request will work for you. It’s then more of a question of what you want the response to be, and how the browser is going to handle it. (For example, what problems might be caused by a user clicking the button twice in a row?)