2
도와주세요.json 형식으로 데이터를 반환하는 방법은 무엇입니까?
. 다음 페이지로 보내면 컨트롤러에 의해로드됩니다.
from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.template import loader, RequestContext
from reviewsFancy.models import ReviewsFancy
from django.cong import settings
import json
def reviewsFancyCall(request):
if request.method == "POST" and request.is_ajax():
c = ReviewsFancy(
title=request.POST.get("title", ""),
name=request.POST.get("name", ""),
message=request.POST.get("message", ""),
)
c.save()
with open(settings.BASE_DIR + 'qwe.txt', "wb") as f:
f.write(bytes('ok', 'UTF-8'))
data = [['result', 'ok']]
return json.dumps(data)
else:
with open(settings.BASE_DIR + 'qwe.txt', "wb") as f:
f.write(bytes('no', 'UTF-8'))
data = [['result', 'no']]
return json.dumps(data)
결과적으로 모든 것이 의도 한대로 작동합니다. 데이터가 테이블에 성공적으로 기록됩니다.
..................
$.ajax({
url: "/reviewsFancy/call/",
type: 'POST',
dataType: "json",
data: {
"title": title.val(),
"name": name.val(),
"message": message.val(),
},
error: function() {
console.log('err');
alert('error');
},
success: function(data) {
console.log('succ');
console.log(data['result']);
title.val('');
name.val('');
message.val('');
$('.reviews_fancy').toggleClass('hide');
alert('success');
},
...............
를하지만 콘솔에서 나는 오류 얻을 :
POST http://127.0.0.1:8000/reviewsFancy/call/ 500 (INTERNAL SERVER ERROR) jquery.2.min.js:6
XHR finished loading: "http://127.0.0.1:8000/reviewsFancy/call/". jquery.2.min.js:6
err
데이터를 반환하기 위해 MIME 형식을 설정 했습니까? – fledgling
백엔드 사이드를 확인 하시겠습니까? 디버그 모드에서 DJango를 실행하고 오류가 있는지 확인하십시오. – Nilesh