我在Rails应用程序上有一个Settings类,其中有几个列可由后端的管理员用户f.i更新。 support_email,所以我希望每次应用在新用户注册后发送电子邮件时重新评估此列。
我在Devise初始化程序中尝试使用stubby lambda,就像类中的作用域一样:
Devise.setup do |config|
# Omitted config
config.mailer_sender = -> { "AppName <#{Settings.get(:support_email)}>" }
# Omitted config
end
但它不起作用,因为它返回一个Proc对象。
我在stubby lambda中直接尝试使用 .call ,虽然我不知道这是不是一个好习惯:
Devise.setup do |config|
# Omitted config
config.mailer_sender = -> { "AppName <#{Settings.get(:support_email)}>" }.call
# Omitted config
end
这种方法不起作用,因为我收到了第一次评估后收到的相同价值。
有什么建议吗?