2008-10-31 23 views
5

Şu anda Redland için Python bağlantılarını gözden geçiriyorum ve depolama motorunda işlem yapmanın temiz bir yolunu bulamadım. Ayrıca depolama tabakasına aşağı çevirmekRedland'ın Python bağlamalarında depolama işlemleri var mı?

import RDF, Redland 

storage = RDF.Storage(...) 
model = RDF.Model(storage) 
Redland.librdf_model_transaction_start(model._model) 
try: 
    # Do something 
    Redland.librdf_model_transaction_commit(model._model) 
    model.sync() 
except: 
    Redland.librdf_model_transaction_rollback(model._model) 

bu yapın: Ben düşük seviye Redland modülü içinde bazı model işlemlerini bulundu?

cevap

4

:-)

sayesinde Evet, bu çalışması gerekir. Python ambalajında ​​model sınıfı için herhangi bir kolaylık fonksiyonu yoktur, ancak yazdığınız şeye benzerler:

class Model(object): 
    ... 
    def transaction_start(self): 
    return Redland.librdf_model_transaction_start(self._model)