2011-05-02 55 views
2

我正在開發一個庫,使用CMIS兼容存儲作爲後端(在我的情況下是Alfresco)。我非常想創建一個類似於Flask-SQLAlchemy和Django的「性感」API。問題是,我對Python中的這種高級編程很陌生。下面是一個使用這個庫的想象方式:高級庫和API設計

# Here is the connector that does the actual request to the CMIS server 
c = CMISConnector('url', 'username', 'password') 

# Here I declare the model with the desired property fields. A model 
# can be either a folder or a document in Alfresco 
class SomeModel(c.Model): 
    name = c.Property('cmis:name') 

# Some query and create examples... 
foo = SomeModel.query.first(name='John Doe') 
print foo.name 
bar = SomeModel(name='Jane Doe') 
bar.save() 

由於會有一個後端的整個對象模型我想每一個從模型繼承使用相同的連接類,而無需顯式地註冊。

任何幫助,將不勝感激:)

回答

2

你已經採取了看看cmislib?這是用Python編寫的用於CMIS的客戶端API。它允許您使用Alfresco(或任何其他符合CMIS的存儲庫)中的對象。

該API爲您提供「文檔」和「文件夾」等對象。我認爲你必須編寫一些Django中間件來完成你正在嘗試做的模型工作,但至少cmislib會使你不用編寫與Alfresco的交互代碼。

希望幫助,

傑夫

+0

我的藏書cmislib的封裝允許類似Django的數據庫對象模型。我使用cmislib來處理所有「背後」的東西:) – codehugger 2011-05-04 10:56:08