Как переписать код представления Django на основе функций в представление на основе классов?
У меня есть следующий код для представления на основе функций:
fav = bool
if post.favourites.filter(id=request.user.id).exists():
fav=True
но я хочу поместить это в представление, основанное на следующем классе:
class PostDetailView(DetailView):
model = Post
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['productobj'] = Post.objects.get(id = self.kwargs['pk'])
return context
Я довольно новичок в Django, поэтому я не так много знаю о функциях внутри представлений на основе классов и о том, как передавать параметры из них. может ли кто-нибудь помочь добавить код к приведенному выше представлению на основе классов?
В функции get_context_data
можно использовать self. перед запросом. Таким образом,
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['productobj'] = Post.objects.get(id=self.request.user.id)
return context