У меня есть UpdateView, который я переопределяю методом form_valid. По какой-либо причине «запрос» показан как не определенный в переопределенном методе. Вот полный класс:global name 'request' не определен: overriding form_valid
class UpdateTopic(UpdateView):
model = Post
slug_field = 'pk'
slug_url_kwarg = 'pk'
form_class = CommentForm
template_name = "forums/update_topic.html"
def form_valid(self, form):
user = self.request.user
rep = self.request.user.player.get_rep_total
# protect the system against url input attacks
if user == self.object.user or rep >=2500:
self.object = form.save(commit=False)
self.object.updated_by = self.request.user
self.object.save()
messages.add_message(request, message.SUCCESS, "<strong>Success:</strong> The comment was edited successfully!")
else:
messages.add_message(request, message.ERROR, "<strong>Failed:</strong> You don't have the access level to edit that post!")
Проблема заключается в линии messages.add_message(request, message.SUCCESS, "<strong>Success:</strong> The comment was edited successfully!")
Похоже, что request
выходит за рамки как некоторые. Почему он это делает? Есть ли способ обойти это?
Это должно быть 'self.request', а не' request'. –
@limelights, возможно, вы могли бы опубликовать это как ответ? – icedtrees