【发布时间】:2014-07-30 22:31:52
【问题描述】:
令人惊讶的是,Rails 的初始化程序在运行任何 rake 任务(包括 db:migrate 和 db:seed)时运行。
我的应用程序中的初始化程序启动了一个后台线程(一种工作进程),它应该仅在应用程序在调试和生产模式下运行时执行。
在执行rake db:migrate 时如何防止特定的初始化程序运行或如何在初始化程序中检测rake 任务正在运行?
【问题讨论】:
-
迁移需要加载你的环境,初始化器是环境的一个组成部分。如果您需要在迁移期间不运行初始化程序,那么它可能在错误的位置。
标签: ruby-on-rails database-migration initializer