我需要ActiveRecord :: AttributeAssignment.assign_attributes(new_attributes,options)的不同行为。
对于我的整个Web应用程序,我想评估[并经常覆盖] new_attributes。 (我想这样做是为了支持不遵循rails形式命名约定的第三方UI小部件)。虽然这可能有点臭,但我可以编写补丁,只有在呼叫确实来自第三方表单时才会激活。
我写了一个补丁,可以覆盖正常的行为;但是,我想知道是否可以从我的补丁中调用原始方法?
当然我可以将原始assign_attributes剪切并粘贴到我的补丁中。还有更好的方法吗?
答案 0 :(得分:0)
alias或alias_method应该做的伎俩,请参阅 Ruby at about.com: aliasing
答案 1 :(得分:0)
alias_method_chain
存在于这种情况。
这并不总是正确的选择,但是如果你有一个合适的用例,那么这个用例看起来很合适。