如何重定向到root是标志是" false"?

时间:2014-05-15 14:42:25

标签: ruby sinatra

我试图重定向到登录页面,但它没有重定向到登录页面而是登录页面内容返回到sinatra的响应

get '/' do
    flag = false
        if flag == true 
        erb :index
        else
        erb :login
       end
end 

get '/list' do
    flag = false
    if flag
        puts "show list"
    else
        redirect "/"
    end
end

当我打电话" / list"它重定向到" /"然后它应该转到login.erb页面,但这不会发生,而是将login.erb的内容返回到root调用的响应中。

enter image description here

如何在root调用上显示login.erb页面?

1 个答案:

答案 0 :(得分:0)

您还需要在根目录中使用重定向。这听起来像你去/你希望被重定向到/登录如果你没有登录。你可以使用:

redirect to "/login"

而不是

else erb :login end

然后您需要添加

get '/login' do erb: login end