繁体   English   中英

如何在Rails中将数据从一个模型/控制器发送到另一个模型/控制器

[英]How to send data from one model/ controller to another in Rails

不确定如何实现:

  1. 用户在第1页上输入电子邮件
  2. 在第2页上,用户无需再次输入电子邮件,因为它一直存在(同样适用于所有控制器/型号)

使用下面的代码段表达它的另一种方式:

  1. 用户在注册/新帐户中输入电子邮件“ test@gmail.com”
  2. 电子邮件已发布到注册/创建,因此现在模型注册使用“ test@gmail.com”添加了一行新数据
  3. 用户重定向到请求/新
  4. 对于请求/新请求,我希望可以立即访问用户刚刚注册的电子邮件,即在新操作中@ requestrecord.email =“ test@gmail.com”,因此用户不必重新输入并发布到请求/创建

注册控制器代码

def new
    @signup = Signup.new
end

def create
    @signup = Signup.new(signup_params)
    if @signup.save
        redirect_to new_request_path
    else
        render new_signup_path
    end

end

请求控制器代码

def new
    @requestrecord = Request.new
end

def create
    @requestrecord = Request.new(request_params)
end

您可以在会话变量中设置用户的电子邮件:

def create
  @signup = Signup.new(signup_params)
  if @signup.save
      session[:user_email] = @signup.email
      redirect_to new_request_path
  else
      render new_signup_path
  end
end

然后您可以根据需要在Request控制器session[:user_email]它与session[:user_email]一起使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM