ループ内の pymongo の挿入に関するトリッキーな問題があります。insert() を使用すると結果が最初のレコードのみになり、save() を使用すると最後のレコードになるのはなぜですか。
from pymongo import Connection
m = Connection(config.get('server'))
mdb = m[config.get('db_name')]
cond = {
'corp_fax_no' : u'5667767',
'corp_area_id' : 12L,
'corp_url' : u'http://www.example.com',
'corp_id' : 1L,
'corp_addr' : u'some thing',
'corp_post_no' : u'220940',
'corp_email' : u'123@123.com',
'corp_tel_no' : u'714-717-2265'
}
@tool.timeit
def test_insert_mongo():
cn = '{0}'.format(config.get("coll_timetest"))
coll = mdb[cn]
for i in xrange(10000):
print i
cond.update({'corp_id':i})
coll.insert(cond)
test_insert_mongo()
Mongo に 10000 エントリを挿入しただけですが、1 つのエントリしか見つかりません。なんで?