[英]Ruby Rails: passing session info in a thread to a Oracle db connection
我们的应用程序在会话中保留一个用户ID,我们需要将该用户ID传递给oracle连接,以便可以使用每个用户操作将用户ID登录到oracle中。 这需要根据请求完成。 我们正在使用的OCI8 gem具有我们可以设置的client_identifier属性。 我们只需要知道如何以及在哪里。
我们是否可以在应用程序控制器中的方法(在before_filter中触发)中访问线程数据库连接,并且如果这样做,该连接将公开其适配器的方法和/或属性? 这些属性会在随后的ping或sql操作中传递吗?
像这样:
ActiveRecord :: Base.connection.client_identifier =会话[:user]
也许?
谢谢
看起来我们需要获取原始连接,这使我们能够在应用程序控制器中的before过滤器中设置客户端ID。 有点像这样:
ActiveRecord :: Base.connection.raw_connection.client_identifier = user_id
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.