Я пытаюсь ограничить доступ к страницам CRUD для владельцев, но я не могу найти представление на основе классов, эквивалентное "if request.user! = Post.author повышение Http404".Спасибо за ваше время.
models.py
class Article(models.Model):
title = models.CharField(max_length=255)
body = models.TextField()
date = models.DateTimeField(auto_now_add=True)
author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('article_detail', args=[str(self.id)])
views.py
class ArticleUpdateView(LoginRequiredMixin, UpdateView):
model = Article
fields = ['title', 'body']
template_name = 'article_edit.html'
login_url = 'login'
Я попробовал следующее (и многие другие комбинации вокруг этих строк), ноэто не работает.
def get(self, request, *args, **kwargs):
if self.request.user == self.obj.author:
raise Http404()