valexeich
@valexeich

Как с одного view рендерить шаблон и отправить json ответ?

Как с одного view отправить json ответ, если javascript запрашивает его и одновременно рендерить мой шаблон?

Вот view:

class ProfileDetailView(DetailView):
    """"Main Profile page"""
    model = Profile
    queryset = Profile.objects.select_related('user').prefetch_related('post').all()
    template_name = 'profile/profile_detail.html'
    context_object_name = 'profile'

    def get(self, request, *args, **kwargs):
        self.object = self.get_object()
        posts = self.object.get_post_list()
        receiver = check_relationship(user=self.request.user, profile=self.get_object())
        friend_request = check_friend_request(user=self.request.user, profile=self.get_object())
        data = {
            'form_post': PostForm,
            'form_comment': CommentForm,
            'form_ab': AvatarBackgroundUpdateForm,
            'receiver': receiver,
            'friend_request': friend_request,
            'online_users': get_online_users()
        }
        context = self.get_context_data(object=self.object)
        context.update(data)
        if request.accepts("application/json"):
            return JsonResponse({'posts': posts}, status=200)
        return self.render_to_response(context)


Если js запрашивает данные то у меня грузит JsonResponse, вместо моего шаблона как это решить?
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Одновременно никак.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы