Как совместно использовать объект списка с пользовательской формой

Я пытаюсь поделиться опубликованными объектами в представлении списка, но каждый раз, когда я нажимаю на кнопку поделиться, которая перенаправляет меня на share_form.html после ввода текста в общей текстовой области и отправки формы, она не отправляет форму с общим объектом, если я не использую контекстную переменную {{ form }}, прежде чем объект может быть разделен, почему, когда я использую свою пользовательскую форму, она не отправляет общий пост, а когда я говорю {{ form }}, она может поделиться постом?

Here is my view to share post

def share_post(request, pk):
    original_post = Post.objects.prefetch_related('postimage_set').get(pk=pk)
    form = ShareForm(request.POST, request.FILES)
    if form.is_valid():
        new_post1 = Post(
            shared_body = request.POST.get('description'),
            description = original_post.description,
            username = original_post.username,
            date_posted = original_post.date_posted,
            video    = original_post.video,
            shared_on = datetime.now(),
            shared_user = request.user)
        new_post1.save()
        for image in original_post.postimage_set.all():
            new_post = PostImage(post=new_post1, 
                                username=original_post.username,
                                 image=image.image)
                
            new_post.save() 
        return redirect('feed:feed')
        
    ctx = {'form':form,'original_post':original_post}
    return render(request,'feed/share_form.html', ctx)

Моя модель формы django для обмена сообщениями!

class ShareForm(forms.Form):
    body = forms.CharField(label='',widget=forms.Textarea(attrs={
    'rows': '3',
    'placeholder': 'Say Something...'
  }))
        

Моя html форма для обмена сообщениями

После того, как я тщательно проанализировал проблему, я пришел к стабильному решению, на самом деле проблема исходила из модели формы:

 this where the problem was

class ShareForm(forms.Form):
    body = forms.CharField(label='',widget=forms.Textarea(attrs={
    'rows': '3',
    'placeholder': 'Say Something...'
  }))

Вместо этого я должен был сделать что-то вроде этого, я опустил поле описания, где и была моя проблема !

class ShareForm(forms.Form):
    description = forms.CharField(
          label='',
  widget=forms.Textarea(attrs={
    'rows': '3',
    'placeholder': 'Say Something...'
  }))
Вернуться на верх