0
我使用Ruby 1.8.5,我想使用一個輔助的方法來幫助篩選這樣的用戶的喜好:如何在Ruby 1.8.5中重新傳遞多個方法參數?
def send_email(user, notification_method_name, *args)
# determine if the user wants this email
return if !user.send("wants_#{notification_method_name}?")
# different email methods have different argument lengths
Notification.send("deliver_#{notification_method_name}", user, *args)
end
這個作品在紅寶石1.8.6,但是當我嘗試做這在1.8.5,並嘗試發送多個ARG我得到的線沿線的一個錯誤:
錯誤的參數數目(2 X)
其中X爲參數的個數該特定的方法需要。我寧願不重寫所有的通知方法 - Ruby 1.8.5可以處理這個嗎?
出於好奇,爲什麼*不*使用Ruby 1.8.6? – Matchu 2010-11-29 03:51:38