回答

3

ConnectionAdapter定义了两个回调:checkout(连接)和:checkin(断开连接)。你可以用它为特定适配器

ActiveRecord::ConnectionAdapters::MysqlAdapter.set_callback :checkout, :after do 
    raw_connection.set_your_variables ... 
end 

或者你可以使用ActiveRecord::Base.connection.class对于任何适配器database.yml

+0

请注意,从Rails 5.2开始,这个回调在连接建立后不是一次触发,而是在连接池的每次检出时触发(与在处理每个HTTP请求之前一样)。此外,你不能从它调用模型方法(你会得到无尽的递归)。 – Envek