def change_state(self, state): print "device " + self.device.name + " changing state from " + self.state.name + " to " + state.name AsyncTCPClient.change_state(self, state) self.device.current_state = self.state.name try: self.device.save(update_fields=['current_state']) except DatabaseError: pass