2011-05-24 3 views
0

Mes données sont au format JSON;Gestion JSON dans Django

{"user": "foo", 
"name": "foo", 
"email": "[email protected]", 
"password":"password"} 

Je demande une ressource en boucle

curl -X POST address/resource --data-urlencode @file 

problème est que je ne peux pas désérialiser les données affichées du tout. Je l'ai essayé d'utiliser json.load/json.loads et désérialiser mais ne peut pas accéder aux attributs ..

raw_data = json.load(request.POST) 
raw_date = serializers.deserialize('json', raw_data) 

À un moment donné, je réussi à obtenir DeserializedObject, mais il n'a pas aidé .. Comment puis-je transformer cette JSON-data to python dictionary ou un autre format que je peux accéder aux attributs?

+0

"ne peut pas accéder aux attributs"? Qu'est-ce que ça veut dire? Pourquoi votre code affiche-t-il un 'json.load' ET un sérialiseur Django séparé en deux étapes? Pourquoi faire les deux? –

Répondre

0
import simplejson as json 
_dict = json.loads("{'json':'string'}) 

ou

import json 
_dict = json.loads("{'json':'string'}) 

avis sur les s charge S

+0

Toujours l'erreur HTTP 500. request.raw_post_data ne fonctionnait pas non plus. – rice

+0

curl -X POST localhost: 8000/api/utilisateurs/--data @ user.json travaillé. Pour une raison quelconque, j'avais --data-urlencode .. – rice

+0

whoops, ça arrive. – jbcurtin