【发布时间】:2020-08-17 10:14:50
【问题描述】:
我正在尝试在用户配置文件中实施评论部分,但是当我尝试提交评论时,即使我在管理面板中创建评论时它仍会正常显示在配置文件中,但我仍然收到此 405 错误。如果你能帮忙的话。
提前致谢
代码:
型号
class Review(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
expert = models.ForeignKey(Expert, on_delete=models.CASCADE)
timestamp = models.DateTimeField(auto_now_add=True)
content = models.TextField()
表格
class ReviewForm(forms.ModelForm):
content = forms.CharField(widget=forms.Textarea(attrs={
'rows':3,
}))
class Meta:
model = Review
fields = ('content',)
查看
class ExpertDetailView(DetailView):
model = Expert
def expert(self, *args, **kwargs):
form = ReviewForm(self.request.POST)
if form.is_valid():
expert = self.get_object()
review = form.instance
review.user = self.request.user
review.expert = expert
review.save()
print ('worked')
print ('worked')
def get_object(self, **kwargs):
object = super().get_object(**kwargs)
return object
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context.update({
'form': ReviewForm()
})
return context
最后是模板
<h4>Leave a comment below</h4>
<form method='POST'>
{% csrf_token %}
{{ form|crispy}}
<br>
<button class='btn btn-primary' type='submit'>review</button>
</form>
<hr />
<h5>Comments</h5>
{% for review in object.reviews %}
<div>
<p>{{ review.content }}
<br />
<small>{{ review.timestamp|timesince }} ago</small>
</div>
<hr />
{% endfor %}
【问题讨论】:
-
你能贴出 django 返回的错误吗?
标签: python django http-status-code-405