Reputation: 11028
I'm trying to get data in a view formatted to json to pass to jQuery code.
I am able to get a json dump from a simple dictionary:
from django.core import serializers
message = Message.objects.get(pk=2)
json_result = serializers.serialize("json", [message,])
I am also able to get a json dump from a Django model:
import json
result = {"message": "hello",
"age": 3}
json_result = json.dumps(result)
but I haven't been able to get a properly formatted json dump from a Django model nested inside a dictionary:
from django.core import serializers
import json
message = Message.objects.get(pk=2)
json_message = serializers.serialize("json", [message,])
result = {"message": json.dumps(serialized_message),
"age": 3}
bad_json_result = json.dumps(result)
Upvotes: 2
Views: 733
Reputation: 938
You can use json.loads
import json
from django.core import serializers
message = Message.objects.get(pk=2)
json_str_result = serializers.serialize("json", [message,]) #returns string
to_dump = {"message": json.loads(json_str_result)[0], "age": 3} #json.loads
print json.dumps(to_dump)
Upvotes: 2