GQL: Estou armazenando o JSON no DataStore. Todo o JSON está sendo convertido em entidades HTML, como evitar isso?
-
25-09-2019 - |
Pergunta
O Tittle diz mais:
Estou armazenando JSON no armazenamento de dados. Todo o JSON está sendo convertido em entidades HTML, como posso evitar isso?
Original eu tinha
myjson = db.stringproperty ()
Ele reclamou que o JSON que eu tinha era por muito tempo e StringProperty tinha um limite de cerca de 500 chars. SUBESTING para usar o TextProperty.
Ele inseriu sem problemas, mas agora Myjson se parece com isso quando eu o busco no banco de dados:
{ "timeUnit": "14", "taskCounter": "0", "dependencyCounter": "0", "tasks": [], "dependencies": []}
Alguma sugestão?
Editar:
Código:
Modelo:
the_json = db.TextProperty()
Salvando:
myObjectKey = request.POST["myKey"]
myJson = request.POST["myJson"]
element = myObject.get(myObjectkey)
logging.error(" -------------------------")
element.the_json = myJson
element.put()
Carregando:
params = {}
myObjectKey = request.POST["myKey"]
element = myObject.get(myObjectKey)
params['the_json'] = myObject.the_json
return respond(request, "ajax/load.html",params) #this function is a redirect to shortcuts.render_to_response
Para o Ajax, estou usando o jQuery para lidar com tudo. O JSON é uma corda normal sem ' n'.
json_in_the_js = '{ "timeUnit": ...';
Solução 2
O problema não estava no armazenamento de dados. Foi no fato de eu estar usando um modelo para escrever o JSON.
Eu gerei a resposta à mão com:
response = HttpResponse(myObject.the_json)
E funcionou muito bem :)
Outras dicas
Como você está buscando e exibindo o JSON? Definitivamente, isso não é um problema com a forma como é armazenado no armazenamento de dados, mas sim como é exibido, ou possivelmente como está sendo recebido. Precisamos ser capazes de ver todo o código que lida com ele para dizer qual.