Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 设计和公寓gem多租户应用程序_Ruby On Rails_Devise_Apartment Gem - Fatal编程技术网

Ruby on rails 设计和公寓gem多租户应用程序

Ruby on rails 设计和公寓gem多租户应用程序,ruby-on-rails,devise,apartment-gem,Ruby On Rails,Devise,Apartment Gem,我的应用程序目前只允许用户登录其子域,即subdomain.domain.com/users/sign_-in。我希望用户改为登录domain.com/users/sign_ 我是Rails新手,在Github上的这个项目中,我在子域方面得到了很多帮助: 在routes.rb中,我添加了“design_for:users”,以便在domain.com/users/sign_-In上显示sign_-In表单,但是由于出现“无效电子邮件和密码”错误,我无法向子域验证用户 有没有一种方法可以让用户从d

我的应用程序目前只允许用户登录其子域,即subdomain.domain.com/users/sign_-in。我希望用户改为登录domain.com/users/sign_

我是Rails新手,在Github上的这个项目中,我在子域方面得到了很多帮助:

在routes.rb中,我添加了“design_for:users”,以便在domain.com/users/sign_-In上显示sign_-In表单,但是由于出现“无效电子邮件和密码”错误,我无法向子域验证用户

有没有一种方法可以让用户从domain.com登录,并通过身份验证和重定向到正确的子域

我试过:

而我得到的一列“子域”不存在错误。 我还尝试了自定义应用程序解决方案,该解决方案在我添加的所有重定向路径上不断给我一个错误


如有任何帮助或建议,我们将不胜感激。

在我们的应用程序中,我们将创建一个具有以下功能的用户:

def create 
  @user = User.new(user_params)
  @account = Account.new(subdomain: params[:subdomain], owner: @user)
  if @user.valid? && @account.valid?
    Apartment::Tenant.create(@account.subdomain)
    Apartment::Tenant.switch(@account.subdomain)
    @user.save
    @account.save
    redirect_to new_user_session_url(subdomain: @account.subdomain)
  end 
end
在帐户控制器的创建方法中

你可以在这里查看

您的用户帐户创建方法与我的非常相似,我注意到您的登录位于子域中,与子域.happyhours.io中的登录相同,但是,我希望登录位于子域中,而不是您在子域中要求登录,在允许用户登录的方法中,您必须使用
公寓::Tenant.switch(params[:subdomain])
切换到正确的公寓,然后使用代码登录用户并将其发送到正确的routeMarcel,感谢您的输入,但是,问题不是注册和注册后重定向。帐户创建工作正常,并且可以重定向,因此如果我重定向到:new_user_session_url(子域:@account.subdomain),用户可以正常登录,但是如果我重定向到根目录(实际上来自HomeController),用户可以输入其电子邮件和密码,但他们收到的电子邮件和密码错误。