在我的應用程序,我有一些代碼,看起來像這樣:紅寶石方法,需要一個塊,並調用該塊
if is_translation?
@booking.enable_dirty_associations do
booking_update
end
else
booking_update
end
我想它,而不是看起來像這樣:
is_translation? ? @booking.enable_dirty_associations : func do
booking_update
end
其中func
是採取該塊並剛剛執行它的方法。
有沒有一個內置的Ruby方法,或者可能是一個combinator函數來做到這一點?
是被傳入的塊嗎?你以某種方式創造它?根據你提供的東西你不需要一個塊,你可以這樣做:「is_translation??booking.enable_dirty_associations:booking_update」並且「booking_update」是你正在工作的實例的方法。需要更多的信息真的有幫助。 – Brandon 2011-03-15 09:29:22
booking_update是我正在處理的實例的一種方法。 enable_dirty_associations我認爲只需要一個塊,我想在該塊中執行的操作是調用booking_update。 – paulodeon 2011-03-15 10:02:48
作爲一個例子,原型js庫提供Prototype.K http://api.prototypejs.org/Prototype/K/函數,它返回它的參數不變。我想我正在尋找的東西是沿着這些線。 – paulodeon 2011-03-15 13:15:42