gpt4 book ai didi

ruby-on-rails - ActiveRecord::ConnectionNotEstablished 在 rake 任务中

转载 作者:行者123 更新时间:2023-11-29 11:20:14 27 4
gpt4 key购买 nike

我正在努力创建一个 rake 任务来删除一些表和触发器。

我的抽佣任务:

task :remove_rubyrep do
sql = <<-SQL
DROP TABLE rr_logged_events, rr_running_flags, rr_pending_changes;
SQL
ActiveRecord::Base.establish_connection
ActiveRecord::Base.connection.execute(sql)
end

我试过这样运行:

rake remove_rubyrep
RAILS_ENV=development rake remove_rubyrep

问题是 rake 任务错误:

rake aborted!
ActiveRecord::ConnectionNotEstablished

关于如何允许 rake 任务连接到数据库以执行原始 sql 的任何建议?谢谢

最佳答案

您没有在 rake 任务中加载 Rails 应用程序,因此 ActiveRecord 永远不会创建数据库连接。

将您的抽佣任务更改为:

task :remove_rubyrep => :environment do

这样做之后,您将不再需要“establish_connection”行

关于ruby-on-rails - ActiveRecord::ConnectionNotEstablished 在 rake 任务中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14163938/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com