docs: def save(self, commit=True):
          """ Saves the instance. """
          if self.instance.pk:
              # First handle updates
              post = super().save(commit=False)
              post.updated_by = self.user
              post.updates_count = F('updates_count') + 1
          else:
              post = Post(
                  topic=self.topic,
                  subject=self.cleaned_data['subject'],
                  approved=self.perm_handler.can_post_without_approval(self.forum, self.user),
                  content=self.cleaned_data['content'],
                  enable_signature=self.cleaned_data['enable_signature'])
              if not self.user.is_anonymous:
                  post.poster = self.user
              else:
                  post.username = self.cleaned_data['username']
                  post.anonymous_key = get_anonymous_user_forum_key(self.user)
  
          # Locks the topic if appropriate.
          lock_topic = self.cleaned_data.get('lock_topic', False)
          if lock_topic:
              self.topic.status = Topic.TOPIC_LOCKED
              self.topic.save()
  
          if commit:
              post.save()
  
          return post