用户登录后的页面重定向

时间:2013-02-21 01:09:33

标签: ruby-on-rails ruby-on-rails-3

我希望能够在用户登录后立即将用户重定向到不同的主页(此部分正在运行)但我仍然希望登录用户能够访问索引源,如果他们想要的话。目前他们只能看到favourites_show_path而不是@guidelines = Guideline.order(:title).all。有没有办法(无需建立第二个索引操作和视图)登录后获取主页直接到favourites_show_path但仍然能够看到@guidelines = Guideline.order(:title).all?

 def index
    if params[:search].present?
    @search = Sunspot.search(Guideline) do  
      fulltext params[:search]
    end
    @guidelines = @search.results
  else
    redirect_to favourites_show_path, :action => 'index' and return if current_user
    @guidelines = Guideline.order(:title).all
  end

2 个答案:

答案 0 :(得分:0)

只需将@guidelines...移出条件并重命名搜索结果符号:

def index
  @guidelines = Guideline.order(:title).all
  if params[:search].present?
    @search = Sunspot.search(Guideline) do  
      fulltext params[:search]
    end
    @results = @search.results
  else
    redirect_to favourites_show_path, :action => 'index' and return if current_user
  end
end

答案 1 :(得分:0)

谢谢,我已经解决了这个问题。我应该按照建议将重定向添加到登录操作中。所以我已经删除了

redirect_to favourites_show_path, :action => 'index' and return if current_user

来自我的索引操作,而是添加到我的application_controller.rb

def after_sign_in_path_for(resource)
favourites_show_path
end