2017-02-18 38 views
0

我有一个委托方法的模型,如何在Rails 5中为委托方法定义自定义名称?

class Card < ApplicationRecord 
    has_one :meta_sm2 

    delegate :next_repetition, 
      to: :meta_sm2 
end 

由于基础模型(目前为meta_sm2)可能会在未来改变,所以我想提出的委托方法next_repetition到自定义名称,如priority例如。

如何定义自定义名称委托方法,以便我可以调用next_repetitioncard.priority

+0

您想如何调用自定义名称?即考虑到我有一个名为'card'的卡类。 –

+0

我已经更新了这个问题 –

回答

5

您可以使用alias_method来实现此目的。

class Card < ApplicationRecord 
    has_one :meta_sm2 

    delegate :next_repetition, 
      to: :meta_sm2 

alias_method :priority, :next_repetition 

end 
相关问题