2
我有一個has_many B模型關聯的模型。 我願做這樣的事情在我的模型:Rails - 在has_many關係中最後一條記錄的委託方法
def my_method
self.bs.last.my_method
end
換句話說,我想委託my_method
在聯想我最後的B對象。是否有可能通過委託實現?認爲它會更優雅。謝謝!
我有一個has_many B模型關聯的模型。 我願做這樣的事情在我的模型:Rails - 在has_many關係中最後一條記錄的委託方法
def my_method
self.bs.last.my_method
end
換句話說,我想委託my_method
在聯想我最後的B對象。是否有可能通過委託實現?認爲它會更優雅。謝謝!
我認爲你可以做,如果你創建返回的最後一個「BS」對象的方法:
def last_bs
self.bs.last
end
然後委託:
delegate :my_method, to: :last_bs
UPDATE:這也可以實現:
delegate :my_method, to: "bs.last", allow_nil: true
謝謝,兄弟!這工作,但如果你可以更新你的答案,我知道如何直接在委託上做到這一點,如:委託:my_method,以:「bs.last」,allow_nil:true –