A method is only ever called once. The Python MRO (Method resolution order) determines which method is going to be called. (Basically, it’s a depth-first, left to right order.)
If any class needs to do some work and then ensure that other classes do their work, that’s when they’d call super().
For example, referring to your save_model method at the top, notice that it’s calling super as the last step. That call is going to dispach to the next save_model method in the MRO. If you then had a second Mixin with a save_model method, it would be called. Assuming that save_model then ended with a super(), then it would call the save_model method of ModelAdmin.
As long as every method limits itself to the work it needs to do and then calls super(), the methods should work as you would expect. The order in which they are called is determinable, and you can always inspect the base class’ code to ensure that there are no unintended side effects.