0
我有一個Rails應用程序。當user.id是偶數時,我想從myapp.com/*將用戶重定向到beta.myapp.com/*Rails:將一定比例的用戶重定向到beta版應用程序
我在想我可以在application_controller.rb中放入一個前掛鉤,但是我不知道如何執行通配符重定向(任何時候偶數用戶訪問myapp.com上的頁面,他們都會重定向到beta.myapp.com上的同一頁面)。
我有一個Rails應用程序。當user.id是偶數時,我想從myapp.com/*將用戶重定向到beta.myapp.com/*Rails:將一定比例的用戶重定向到beta版應用程序
我在想我可以在application_controller.rb中放入一個前掛鉤,但是我不知道如何執行通配符重定向(任何時候偶數用戶訪問myapp.com上的頁面,他們都會重定向到beta.myapp.com上的同一頁面)。
您可以使用request.path
重定向到同一路徑上的不同域
# app/controllers/application_controller.rb
before_action :toggle_redirect
def toggle_redirect
if current_user.id.even? && request.url == "http://www.myapp.com/"
redirect_to "http://www.beta.myapp.com#{request.path}"
end
end
完美,謝謝! –
@JacksonCunningham您可能只想考慮在GET請求中執行此操作。也許只有那些沒有查詢參數。 –
@PhilipHallstrom。什麼時候用例會出現?第一次,即使用戶點擊該網站也會收到GET請求(將其切換到beta.myapp.com),然後他們將通過beta版本提交POST。我不明白他們如何在沒有首先重定向的情況下進行POST POST –