2011-02-10 66 views
0

我有這樣的代碼:Django的新手問題

def encode_myway(obj): 
    if isinstance(obj, User): 
     data = dict() 
     data['username'] = obj.username 
     data['code'] = obj.code //a number = 30 
    return data 

我序列化使用simplejson.dumps(resp, default=encode_myway)我有問題的JSON是代碼(整數)等於NULL,但如果我用serializers.serialize("json", [resp,])我得到了很多垃圾在我的JSON,但整數正確..對於垃圾我指的是這樣的事情:

"[{\"pk\":\29,\\"model\":\\"smapp.userprofile\",\\"fields\":\{\"city\":\\"barcelona\", ... }}]" 
+0

Simplejson根據它們的類型(不是你認爲應該是的類型)對一個對象進行編碼,一個None被映射爲null,因此可能再次檢查你的「整數」實際上是一個整數,而不是無。 – Kekoa 2011-02-11 05:38:33

+0

我該如何檢查tha obj.code是一個數字? – david 2011-02-11 08:27:18

回答

0

你似乎是雙重編碼。你不顯示resp來自哪裏,但它似乎已經是JSON。