Как визуализировать данные в Django в AJAX? - PullRequest
0 голосов
/ 21 октября 2018

Я пытаюсь отправить значение json в ajax из представления на основе классов django, и отправляемые данные будут добавляться в html через ajax.но я не могу успешно отправить значение от конца до конца.

class DetailView(TemplateView):
    template_name = 'list.html'

    def get_context_data(self,*args, **kwargs):
        context = super(DetailView,self).get_context_data()
        list_view = GetList().get_data(self.request)
        movie_list = list.json()
        context['list']= movie_list
        print(movie_list)
        return context

Таким образом, этот код отправляет только значение шаблона для данных ajax, когда я выполняю console.log (data) при успешном вызове, он показывает мне весь HTML-код «list.html» в обоихalert и console.log.Но он печатает все значения в консоли cmd.

cclass DetailView(TemplateView):
    template_name = 'list.html'


    def get(self,request):
        list_view = GetList().get_data(self.request)
        movie_list = list.json()
        return HttpResponse(json.dumps(movie_list))

этот код печатает все значения в соответствующем html, но не вызывает ajax function.so никаких значений, отображаемых в console.log.

это мой вызов ajax, сначала я пытаюсь увидеть погоду, я получаю значения при успешном вызове или нет.

<script>
    $(document).ready(function(){
        $.ajax({
            method :'GET',
            url: '/detail',

            success: function(data){
            alert(data)
            console.log(data)
            },
        })
    })
</script>

Итак, как мне достичь желаемого результата?Я хочу получить значение в вызове ajax, поэтому я могу показать эти значения в таблице, которая находится в виде списка

1 Ответ

0 голосов
/ 21 октября 2018

Вы можете использовать JsonResponse для отправки данных JSON.(Вы можете увидеть детали в документах здесь )

, как показано ниже

from django.http import JsonResponse

class DetailView(TemplateView):
template_name = 'list.html'

def get(self,request):
    list_view = GetList().get_data(self.request)
    movie_list = list.json()
    return JsonResponse(movie_list, status=200)

кстати, вы должны знать свой тип данных.JsonResponse автоматически сериализует ваши данные, поэтому вам не нужно использовать json() для ваших данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...