def form_valid(self, form): form = PartialNewPostForm(self.request.POST) post = form.save(commit=False) post.author = self.request.user post.slug = unidecode(post.title) post.slug = slugify(post.slug) post.save() if 'tags_field' in self.request.POST.keys(): tags = self.request.POST['tags_field'].replace(', ', ',').split(',') for tag_name in tags: tag = Tag() tag.post = post tag.name = tag_name tag.save() self.success_url = "/post/" + post.slug return super(NewPostView, self).form_valid(form)