2011-03-19 42 views
0

我是Ruby On Rails的新手(3)。使用Get和Post,我试图创建一个简单的登录功能。登录凭据SUBMITed 后,我写了下面的代码在我的控制器,如何将传入参数传递给redirect_to?

高清登录 @title =“测试登录”

if request.post? and params[:user] 
    @user = User.new(params[:user]) 
    user = User.find_by_username_and_password(@user.username , @user.password) 

if user 
    session[:user_id] = user.id 
    flash[:notice] = "User #{user.username} logged in!" 

    redirect_to :action => "index" , :username => params[:username] 

问题就出在这里,我要打印在用户名文本框中输入的名称。 因此,我将它重定向到params索引。请帮助我,让我的语法正确,以便通过redirect_to将用户名参数传递给索引。

+0

什么是错误? – 2011-03-19 15:36:37

+0

完全没有错误!它只显示用户名..这是我想如何显示它在index.html.erb。 >> file <%=:username%> – Gooner 2011-03-19 17:57:23

回答

0

这应该工作。

代码是否给你一个错误?


从数据更新。

想想我发生了什么事情。这是你如何试图展示它。

索引方法中首先你需要一个线,如

@username = params[:username] 

的@username将变量提供给您的index.html.erb文件,因为它成为控制器的一个实例变量。

在index.html.erb

Welcome Back <%= @usename %> 

应该这样做。

+0

没有错误! – Gooner 2011-03-19 17:37:35

+0

什么是日志显示?或者,如果你正在使用rails来运行服务器,那么显示的是什么? – huntsfromshadow 2011-03-19 17:44:31

+0

没有错误!它显示只是>用户名 这是我想如何显示它在index.html.erb文件 <%=:username%> – Gooner 2011-03-19 17:49:07