School is a twelve-year jail sentence where bad habits are the only curriculum truly learned.
John Taylor Gatto
New forum topics
Recent comments
- you have to use source
14 weeks 2 days ago - Why not just use this method
14 weeks 3 days ago - Great!!!
14 weeks 5 days ago - Really working with internet
14 weeks 6 days ago - I haven't explored Puppet
18 weeks 6 days ago - Wouldn't puppet be more
18 weeks 6 days ago - I agree with the previous
25 weeks 21 min ago - how did this go when you
26 weeks 11 hours ago - First off let me say thank
27 weeks 6 days ago - You are my hero. :) Worked
31 weeks 6 days ago
My little Django and Facebook project needed to do some JSON processing, time for using simplejson then.
My application will receive a string of JSON and transform it to a dictionary, pretty simple. Let's run a test first, starting with the Python shell, or better yet, iPython, and importing the module:
import simplejson
Now let's define a string using JSON notation and pass it to simplejson:
band = "{'name': 'Mando Diao', 'genre': 'rock and roll', 'bid': 19383}"
json = simplejson.loads(band)
And we get a ValueError exception. Let's try using simple quotes for enclosing the whole string and double quotes for the JSON keys and values:
band = '{"name": "Mando Diao", "genre": "rock and roll", "bid": 19383}'
json = simplejson.loads(band)
And there you go, no error now:
print json
{u'genre': u'rock and roll', u'bid': 19383, u'name': u'Mando Diao'}
I find a little strange that this problem happens as I've been using either type of quotes for most of my Python coding. Had you noticed this problem? I've checked simplejson's documentation and could not find anything related to this.
One last word, the new Python 2.6 includes a json module, which is a refactored simplejson. Neat.

Join the conversation
read the json spec at
read the json spec at json.org ... it requires double quotes for keys.
You might have gotten this
You might have gotten this sorted out by now, but the JSON format reuqires you to use "(double quotes)
If you are use this in Django
If you are use this in Django Framework! look this:
class JSONFormField(FeincmsJSONFormField):
def prepare_value(self, value):
if value or value == {}:
value = json.dumps(value)
return value
class JSONField(FeincmsJSONField)
...
def formfield(self, kwargs):
kwargs['form_class'] = JSONFormField
return super(FeincmsJSONField, self).formfield(kwargs)