Автозаполнения слага в CreateView django

Есть форма создания поста юзером

forms

class PostCreationForm(forms.ModelForm):
    class Meta:
        model = Post
        fields = ['title', 'tags', 'text', 'time_to_read', 'image', 'is_published', ]

        widgets = {
            'text': forms.TextInput(attrs={'class': 'form-control'}),
            'time_to_read': forms.NumberInput(),
            'image': forms.FileInput()

        }

у поста есть слаг, который я хочу заполнять по названию поста, как с автором

views

class CreatePost(LoginRequiredMixin, CreateView):
    form_class = PostCreationForm
    template_name = 'blog/create_post.html'
    login_url = 'login'

    
    def form_valid(self, form):
        form.instance.author = self.request.user
        return super().form_valid(form)

    def get_context_data(self, **kwargs):
        context = super(CreatePost, self).get_context_data(**kwargs)
        context['slug'] = slugify(kwargs['title'])

        return context

я пробовал нечто такое, но не выходит. Как я могу заполнить поле слага? в form_valid или context_data? Из-за слага крашится страница , т.к у поста нет слага, и не отрабатывает ф-ция для получения поста(пост создается в бд)

благодарю за помощь

Вернуться на верх