A fair bit of this is Javascript, which, strictly speaking, is outside the scope of Django.
From what you're saying, it sounds like your button does two things: make a backend database change and make a frontend display change. Ultimately, the action starts with a Javascript event handler. On button click, do work.
On the Django side, you want a view that will capture the change. There's more than a few ways to do this, but if you're just talking about a one-and-done like this and you don't want a bunch of extra libraries, I'd make a simple, dedicated view that takes whatever parameters you need to specify the correct boolean field on POST and returns a JSON response to the effect of {success: [true|false], reason: 'failure reason, if any'}. Don't forget to update your urls.py to reflect the new view.
On the Javascript side, in the registered function, you write code that both posts to your Django view in an Ajax call and, if successful, makes the display change.