2012-10-13 69 views
0

我是Ruby和Rails中的新成員。 我想使用聲明式事務管理像Rails中的Java的@Transactional註解。Rails中的聲明式事務管理

有誰知道如何使用Rails中的「聲明式事務管理」?

回答

1

有沒有像紅寶石註釋,但你可以使用元編程自己創建類似的東西。請記住,私有,受保護和公共也只是方法而不是關鍵字。你可以建立自己的類似

transactional 
def my_transactional_method 
    puts "some stuff happens here" 
end 

的東西,也許這寶石https://github.com/fredwu/ruby_decorators幫助你這一點。 或甚至更好https://github.com/michaelfairley/method_decorators,還有一個樣本實現交易裝飾。

+0

非常感謝! – Ruzia

0

我不是來自java的背景,但我讀了聲明式事務管理。在軌道,我們有

ActiveRecord::Base.transaction do 
    #do some model operation 
    #do some model operation 
end 

這裏只有當這兩個操作是成功的,提交到數據庫中進行,如果其中一個出現故障,沒有任何操作都將被提交到數據庫。

+0

感謝您的回覆!但您的示例代碼似乎是編程式事務管理。 ([見這裏](http://static.springsource.org/spring/docs/3.0.x/reference/transaction.html#transaction-programmatic))我想要做一些像[this](http:///static.springsource.org/spring/docs/3.0.x/reference/transaction.html#transaction-claclarative)!(參見10.5.6使用@Transactional) – Ruzia