2013-08-02 41 views
1

我有順序結構:錯誤而更新詢問:AttributeError的(「‘統一’對象有沒有屬性‘亞型’」)

{u'order_id': 12341, 
u'status_history': [{u'reason': u'', 
         u'status': u'2000', 
         u'time': datetime.datetime(2013, 7, 31, 11, 52, 47)}, 
        {u'reason': u'', 
        u'status': u'6020', 
        u'time': datetime.datetime(2013, 7, 31, 11, 59, 8)}, 
        ] 
} 

我想更新記錄。我查詢:

problem_index = 1 # int 
db.order.update({'order_id':order_id}, 
       {'$set':{'status_history.%s' % problem_index : edited_item}} 
) 

結果:

AttributeError("'unicode' object has no attribute 'subtype'",) 

爲什麼呢?

+0

我試過了您的查詢,它工作正常。你的'edited_item'是什麼? –

+0

例如: '{u'status':u'4200',u'problemModCompensation':0,u'modified_field':{},u'problemMod':0,'以前的版本':[{...} ],'editor':{'username':u'Admin','_id':ObjectId('51cc42b10904e7fa4182e06c')}}' – Roosh

回答

0

哦..遞歸結構。需要更多關注。 我保存的最新版本:

last_item = edited_item 
# Need last_item = copy.copy(edited_item) 
if edited_item.has_key('previous versions'): 
    edited_item['previous versions'].append(last_item) 
相關問題