簡體   English   中英

Ruby Rails:將線程中的會話信息傳遞給Oracle數據庫連接

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM