为了账号安全,请及时绑定邮箱和手机立即绑定

如何使我的评论模型表单在模板中呈现时显示当前用户的名称

如何使我的评论模型表单在模板中呈现时显示当前用户的名称

梵蒂冈之花 2023-09-02 16:25:28
我正在尝试在 Django 中创建评论表单。我已经呈现了表单,但我希望表单显示当前登录用户的名称,以便我能够将每个评论与用户相关联。这是我的模型:class Review(models.Model):    company = models.ForeignKey(Company, null=True, on_delete=models.SET_NULL)     # SET_NULL ensures that when a company is deleted, their reviews remains    reviewers_name = models.CharField(max_length=250, verbose_name='Reviewed By: (Your Name)')    review_text = models.TextField(max_length=500, verbose_name='Your Review: (Maximum of 200 Words)')    rating = Int_max.IntegerRangeField(min_value=1, max_value=5)    date_added = models.DateField('Review Date', auto_now_add=True)这是我的观点:def submit_review(request):    form = ReviewForm()    if request.method == 'POST':        form = ReviewForm(request.POST)        if form.is_valid:            form.save()            # gets the company that was immediately submitted in the review form            company = request.POST.get('company')                        # gets the rating that was immediately submitted in the review form            rating = request.POST.get('rating')                        # uses the name of the company submitted to instantiate the company from the Company database            companyone = Company.objects.get(pk=company)                        """            emloys companyone above to retrieve already existing average rating associated with it            adds this to the current rating sent by the user and stores the total back to the average             rating field of companyone            """            companyone.average_rating = round((int(rating) + int(companyone.average_rating))/2)            companyone.save()                        return redirect('review-submitted')    context = {        'form': form    }    return render(request, 'submit-review.html', context)这是呈现的形式:class ReviewForm(ModelForm):    class Meta:        model = Review        fields = '__all__'
查看完整描述

1 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

在模板中,


{% if user.is_authenticated %}

     <p>{{ user.get_username }} </p>

{% endif %}

在观点中,


request.user.get_username()


查看完整回答
反对 回复 2023-09-02
  • 1 回答
  • 0 关注
  • 103 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信