2016-01-15 19 views
7

Bir POST yöntemi ile res_partner tablosunda yeni bir iş ortağı oluşturan OpenERP 7'de bir web servis geliştiriyorum. Benim sorunum, create() yönteminin yeni nesne kimliğini döndürmesidir, ancak veritabanı güncelleştirilmemiştir.Yeni kayıt kümesi kimliğini döndüren ancak veritabanını güncelleştirmeyen Openerp create() yöntemi

@openerpweb.httprequest 
def add_partner(self, req, db, user, password, name, type, street, city, zip, phone, email, function): 
    uid = req.session.authenticate(db, user, password) 
    osv_pool = pooler.get_pool(db) 
    cr = pooler.get_db(db).cursor() 

    partner_pool = osv_pool.get('res.partner') 
    partner_dict = { 
     'name': name, 
     'type': type, 
     'street': street, 
     'city': city, 
     'zip': zip, 
     'phone': phone, 
     'email': email, 
     'function': function 
    } 

    result = partner_pool.create(cr, uid, partner_dict) 
    cr.close() 
    return str(result) 

yöntem bana herhangi hata vermez ve istek yeni kimlikle, 200 kodunu döndürür:

İşte benim kodudur. Bu oluşturma yönteminde neden güncelleştirilmediğini bulamıyorum.

+0

bir browse_record (res.partner, 9840) döndürür –

+0

Veritabanındaki son giriş kimliği 9832'dir ve her yeni bir ortak eklemeye çalıştığımda, kimlik artırılır, ancak –

+0

veritabanına hiçbir girdi eklenmez. anlaşıldı, kayıt oluşturuldu ve yeni kayıt kimliğiniz var. Fakat tablodaki yeni kayıt mevcut değil. Doğru mu? –

cevap

2

Sorunu çözdüm. İmleç nesnesindeki değişiklikleri yapmam gerekiyordu, bu yüzden cr.commit()'u kullandım ve veritabanına girdiyi başarıyla ekledim.

+0

Teşekkürler. İyi şanslar ;) –