Как заставить пользователя написать отзыв о конкретном проекте

Я пытался создать форму, которая позволит пользователю оставить комментарий к определенному проекту, поэтому, когда я нажимаю кнопку отправить, появляется сообщение, что "данные успешно отправлены" без возникновения какой-либо ошибки, но, к сожалению, когда я проверяю базу данных, в таблице Review нет данных

Мой View.py

def project(request, pk):
    projectObj = Project.objects.get(id=pk)
    
    form = ReviewForm() 

    if request.method == 'POST':
        form = ReviewForm(request.POST)
        if form.is_valid():
            review = form.save(commit=False) 
            review.project = projectObj
            review.owner = request.user.profile
            messages.success(request, "Your Review Was Successfully Submitted")
            return redirect('project' , pk=projectObj.id) # pk=projectObj.id was used here because we r redirectong to a page that requires ID

    return render (request, 'projects/single-project.html', {'project': projectObj, 'form': form}) 

Моя модель.py

class Review(models.Model):
    VOTE_TYPE = (
        ('Up', 'Up Vote'),
        ('Down', 'Down Vote')
    )
    owner = models.ForeignKey(Profile, on_delete=models.CASCADE, null=True)
    project= models.ForeignKey(Project, on_delete=models.CASCADE)
    body = models.TextField(null=True, blank=True)
    value = models.CharField(max_length=200, choices=VOTE_TYPE)
    created = models.DateTimeField(auto_now_add=True)
    id = models.UUIDField(default=uuid.uuid4, unique=True, primary_key=True, editable=False)


    class Meta:
        unique_together = [['owner', 'project']]

        
    def __str__(self):
        return self.value

My Form.py

class ReviewForm(ModelForm):
    class Meta:
        model = Review
        fields = ['value', 'body']
        
        labels = {
        'value' : 'Place your vote',
        'body' : 'Add a comment with Your Vote',
        }

    def __init__(self, *args, **kwargs):
        super(ReviewForm, self).__init__(*args, **kwargs)

        for name, field in self.fields.items():
            field.widget.attrs.update({'class':'input'})
```

My Template
```

            <form class="form" action="{% url 'project' project.id %}" method="POST">
              {% csrf_token %}
              {% for field in form %}
              <div class="form__field">
                <label for="formInput#textarea">{{field.label}}</label>
                {{field}}
              </div>
              {% endfor %}
              <input class="btn btn--sub btn--lg" type="submit" value="Comments" />
            </form>
```
Вернуться на верх