Запретить доступ к идентификатору пользователя в модели Foreignkey

        --WHY I CANT TO ACCESS TO ID OF USER AND PRODUCT WITH user__id and product__id?
        i have error: (The view store.views.submit_review didn't return an HttpResponse object. It returned None instead).
        <pre><code>
    i define some code for rating post for any user user
        --#views
        def submit_review(request, product_id):
            url = request.META.get('HTTP_REFERER')
            if request.method == 'POST':
                try:
                    reviews = ReviewRating.objects.get(user__id=request.user.id,Product__id=product_id) #my problem is here
                    form = Reviewform(request.POST, instance=reviews)
                    form.save()
                    messages.success(request, 'Thank you!your review has been updated.')
                    return redirect(url)
                except ReviewRating.DoesNotExist:
                    form = Reviewform(request.POST)
                    if form.is_valid():
                        data = ReviewRating()
                        data.subject = form.cleaned_data['subject']
                        data.review = form.cleaned_data['review']
                        data.rating = form.cleaned_data['rating']
                        data.ip = request.META.get['REMOTE_ADDR']
                        data.product_id = product_id
                        data.user_id = request.user.id
                        data.save()
                        messages.success(request, 'Thank you! Your review has been submitted')
                        return redirect(url)
        </code></pre>

в этом разделе я определяю модель. Я проверил эту часть, она работает правильно


define model for views in my app
#models
class ReviewRating(models.Model):
Product = models.ForeignKey(product, on_delete=models.CASCADE)
user = models.ForeignKey(Account, on_delete=models.CASCADE)
subject = models.CharField(max_length=100, blank=True)
review = models.TextField(max_length=500, blank=True)
rating = models.FloatField()
ip = models.CharField(max_length=20, blank=True)
status = models.BooleanField(default=True)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)

            def __str__(self):
                return self.subject

В этой части я определяю url #urls Определите путь для html и представлений urlpatterns = [ path('submit_review/int:product_id/',views.submit_review,name='submit_review') ]

Ваша модель не ясна. Будет лучше, если вы хотя бы поделитесь полным файлом model.py Если вы предоставите цель вашего сервиса с models.py, serializers.py, views.py, я думаю, что смогу помочь более конкретно

до сих пор, одна проблема, которую я нашел в разделе url, это то, что вам нужно добавить < > на int:product_id. это должно быть,

urlpatterns = [
path('submit_review/<int:product_id>/',views.submit_review,name='submit_review')
]
Вернуться на верх