2013-03-26 149 views
0

我正在從API這樣的JSON響應:無法轉換JSON到Python對象

{"code": 200, 
"data": {"messageKey": {}, "returncode": "SUCCESS", 
    "meetingID": "REG_561538474", "hasBeenForciblyEnded": "false", 
    "moderatorPW": "58963", "attendeePW": "54321", "message": {}, 
    "createTime": "1364280051568"}, "errors": null} 

現在我想將其轉換成Python對象,並保存在數據庫中的一些價值。

這裏是我的代碼:

getmobject = Meeting() 
getj = json.loads(r.text) 
for x,v in getj.items(): 
    if x == 'data': 
     if x.meetingID:# == 'meetingID': 
     getmobject.meetingID = x.meetingID 
     if x.moderatorPW: 
      getmobject.moderator_passwd = x.moderatorPW 
      if x.attendeePW: 
       getmobject.attendee_passwd = x.attendeePW 
       getuser_main = User.objects.get(username = request.user.username) 
       getmobject.name = get_meeting_name 
       getmobject.created_by = getuser_main 
       getmobject.sms_no = '12345' 

       """Reminder we are making false as if participant accept then only 
        meeting will able to initiate""" 
       getmobject.reminder = False 
       getmobject.save() 

但問題是,我得到的錯誤:

'unicode' object has no attribute 'meetingID' 

請幫我出什麼可能我在這裏

回答

1

做錯了在你的代碼當x == "data",那麼v是出現在json字符串中的「數據」前面的字典,所以你應該使用v["meetingID"]而不是x.meetingID等等......

+0

'dict'對象沒有任何屬性'meetingID' – masterofdestiny 2013-03-26 06:50:50

+0

是的,我的錯誤在我的回答中出現錯誤;-),你不能通過'.'來訪問'dict'項目。現在檢查答案。 – MostafaR 2013-03-26 06:53:09

+0

是的,你好,謝謝你 – masterofdestiny 2013-03-26 06:59:11