2012-01-23 9 views
0

を投げている:は、Djangoは "[123L、123L]は、シリアライズJSONではありません" 私は私のコードで

json.dumps({'foo': {'bar': [123L, 123L]}}) 

長いint型は主キーです。

json.dumps({'foo': {'bar': [123L, 123L]}}) 

が正常に動作します:私は、Pythonのmanage.pyシェルでそれを実行しようとすると

"[123L、123L]、シリアライズJSONではありません"

:何らかの理由で、この行はエラーを生成します。

何が起こっているか教えていただけますか?

正確Djangoのエラー:

例外タイプ:例外TypeError 例外値:[123L]はJSONシリアライズ 例外場所ではない:で/usr/lib/python2.7/dist-packages/simplejson/encoder.pyデフォルトでは、これは私の作品ライン192

+0

あなたが投稿には( '}')、右中かっこが不足していたコード... – user268396

+0

はあなたが私たちの(最小)を表示することができ、完全なexcepをスローするコード? –

+0

123Lからintにキャストしようとしました –

答えて

5

初心者のためのよく
from django.db.models.query import ValuesListQuerySet 

def default(o): 
    if isinstance(o, ValuesListQuerySet): 
     return list(o) 
    raise TypeError(repr(o) + " is not JSON serializable") 

json.dumps(valueListObject, default=default) 
関連する問題