1
所以我想寄出一份由控制器定期定義的類變量的報告。但是在郵件程序中,我必須再次定義它們?有沒有辦法不重複這個?我已經考慮過將它更多地轉移到模型上,但最終它仍然是相同數量的定義。梅勒使用與___控制器相同的控制器代碼
所以我想寄出一份由控制器定期定義的類變量的報告。但是在郵件程序中,我必須再次定義它們?有沒有辦法不重複這個?我已經考慮過將它更多地轉移到模型上,但最終它仍然是相同數量的定義。梅勒使用與___控制器相同的控制器代碼
您不必再次定義它們,您可以將它們從控制器作爲參數傳遞給郵件程序方法。
假設你需要@ ivar1,@ ivar2和您的郵件@ ivar3所有你需要做的就是從控制器運行這個命令:
MyMailer.some_email(@ivar1, @ivar2, @ivar3).deliver
編輯:
有你的問題第二次看(和我的回答),我想我可能誤解了它的第一位。
在我的解決方案中,您仍然需要重新定義實例變量。這些值傳遞正確,但你仍然要:
def some_email(v1, v2, v3)
@ivar1 = v1
@ivar2 = v2
@ivar3 = v3
end
沒有辦法用在控制器中定義的相同實例變量。
好吧,謝謝你的回答。我可能會用散列做這個,因爲有很多變量。 – Julian