gpt4 book ai didi

ruby-on-rails - 带有 redirect_to 的 Rails 3 应用程序 before_filter

转载 作者:行者123 更新时间:2023-12-04 03:35:29 25 4
gpt4 key购买 nike

我的 Rails 3 应用程序需要一个 before_filter 来检查用户是否登录。如果记录,重定向到子域。我将 Devise 用于日志系统。注册后,用户将重定向到他的子域,但如果他返回该网站并再次登录,他必须再次重定向到他的子域。

我试过这个:

if current_user.present?
company_id = current_user.company_id
@company = Company.find(company_id)
redirect_to @company.subdomain + "." + request.domain
end

使用此代码,网址为:www.mywebsite.comsubdomain.mywebsite.com是的,我认为这是因为 redirect_to 适用于网页而不是新网址。

我试过

if current_user.present?
company_id = current_user.company_id
@company = Company.find(company_id)
root_url(:host => @company.subdomain + "." + request.domain)
end

但同样的事情。我得到与之前测试相同的 url。

如何重定向到我的子域?

最佳答案

另一个 stackoverflow 问题中的答案也应该是您的答案:https://stackoverflow.com/a/327154/346693

答案提供了什么:

class ApplicationController < ActionController::Base
before_filter :check_uri

def check_uri
redirect_to request.protocol + "www." + request.host_with_port + request.request_uri if !/^www/.match(request.host)
end
end

你的方式的问题是你没有提供完整的 url ( http://sth.com vs sth.com)

关于ruby-on-rails - 带有 redirect_to 的 Rails 3 应用程序 before_filter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8313400/

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