2017-01-20 5 views
1

작동하지 않습니다와 나머지 프레임 워크 API를 장고 :포스트 JSON 내가 모델이 JQuery와 - 아약스가

class Publicacion(models.Model): 
    usuario = models.ForeignKey(User) 
    fecha = models.DateField(auto_now_add=True) 

class Estado(models.Model): 
    publicacion = models.OneToOneField(Publicacion, on_delete=models.CASCADE) 
    texto = models.TextField() 
    imagen = models.ImageField(upload_to='estados', blank=True, null=True) 

그래서 내 JSON이 있어야합니다 같은

{ "에스 타도": { "texto" "" "된 imagen"이미지 } 은}

내 JQuery와 아약스는

입니다

하지만 400 개의 잘못된 요청 응답이있는 서버를 보내면 서버에 "estado"가 필요하며 문제가 무엇인지 생각해보십시오.

+0

'JSON.stringify()'없이 시도해 보셨습니까? – DelightedD0D

+0

예, json이 완벽하게 작동하는 우편 배달부와 함께 –

+0

'processData : false'를 설정하십시오. – DelightedD0D

답변

0

Fisrt, JSON.stringify() 당신이 즉시 구축 있도록, 당신은 단지 다음과 같이 보낼 수 JSON 텍스트로 자바 스크립트 객체를 회전 :

data: {estado:{texto: "text", imagen: dataImg}}, 

을 당신이 필요로하는 다른 경우 이 작업을 수행하는 (당신은 contentType이 실종되었다) :

dataType: 'JSON', 
contentType: 'application/json', 
data: JSON.stringify(yourObject), 
0

당신이 JQuery와하자를 처리 할 경우 백 엔드 a를 보낼 수있는 명시 적으로 content_type 매개 변수를 설정하지 않아도 정상적인 assoc 배열이고 괜찮아 질 것입니다.

$.ajax("domain/end_point",{ 
    type: "POST", 
    data : {"details": "my assoc data"}, 
    crossDomain: true, 
    // contentType: "application/json; charset=utf-8", 
    dataType: "json" 
});