def create_update_event(self):
        """Parse the update messages DSL to insert the data into the Event.

        Returns:
            list[fleaker.peewee.EventStorageMixin]:
                All the events that were created for the update.
        """
        events = []

        for fields, rules in iteritems(self._meta.update_messages):
            if not isinstance(fields, (list, tuple, set)):
                fields = (fields,)

            changed = any([
                getattr(self, field) != getattr(self.get_original(), field)
                for field in fields
            ])

            if changed:
                event = self.create_audit_event(code=rules['code'])
                event.body = rules['message']
                event.meta = self.parse_meta(rules['meta'])
                events.append(event)

        self.update_event_callback(events)

        with db.database.atomic():
            for event in events:
                event.save()

        return events
Parse the update messages DSL to insert the data into the Event.

        Returns:
            list[fleaker.peewee.EventStorageMixin]:
                All the events that were created for the update.