加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 初始化程序在Rails中运行的频率如何?

发布时间:2020-12-17 04:35:24 所属栏目:百科 来源:网络整理
导读:每次有人访问网站时,Rails应用程序中的初始化程序是否都会运行? 例如,如果我的服务器是在上午10点在德克萨斯州启动的,那么有人会在下午1点从纽约访问我的网站.有人在晚上10点从洛杉矶来访,在纽约和洛杉矶的人们访问时,在轨道应用程序中运行初始化程序,或者
每次有人访问网站时,Rails应用程序中的初始化程序是否都会运行?

例如,如果我的服务器是在上午10点在德克萨斯州启动的,那么有人会在下午1点从纽约访问我的网站.有人在晚上10点从洛杉矶来访,在纽约和洛杉矶的人们访问时,在轨道应用程序中运行初始化程序,或者只在我在德克萨斯州启动服务器时才运行初始化程序吗?

我问的原因是因为我在初始化文件中使用case表达式来根据访问应用程序的时间来更改电子邮件设置.只有在有人访问该网站时才会运行初始化程序,这才有意义.如果它们仅在服务器启动时运行,那么它只会是一个案例……

如果这不是正确的地方,或者如果初始化程序仅在德克萨斯州启动服务器时运行(例如),那么您将在何处放置此代码?

case

    when Time.now.hour == 0


    ActionMailer::Base.smtp_settings = {
      :user_name => "blahblah@example.com",:password => "blahblah",:address => "smtp.examplel.com",:port => 25,:tls => true
    }

    when Time.now.hour == 1

    ActionMailer::Base.smtp_settings = {
      :user_name => "blah@example.com",:password => "eatshit",:address => "smtp.example.com",:tls => true
    }

end

解决方法

无论何时启动乘客/杂种或任何使用的东西,初始化器都会加载.

要在运行时设置这些设置,请查看Rails: Runtime configuration of ActionMailer?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读