ruby-on-rails – 如何在Rails 3中创建动态根?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在Rails 3中创建动态根?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的webapp中有管理员和普通用户.我想根据他们的身份使他们的根(/)不同.从许多不同的页面访问根,所以如果我能在routes.rb文件中实现这一点会容易得多.这是我目前的档案.
ProjectManager::Application.routes.draw do
  root :to => "projects#index"
end

有人可以把我链接到一个可以告诉我进入方向的例子吗?有没有办法将逻辑放入路径文件?谢谢你的帮助.

解决方法

您只需为根路由创建控制器即可.
class RoutesController < ActionController::Base
  before_filter :authenticate_user!

  def root
    root_p = case current_user.role
      when 'admin'
        SOME_ADMIN_PATH
      when 'manager'
        SOME_MANAGER_PATH
      else
        SOME_DEFAULT_PATH
      end

    redirect_to root_p
  end
end

在您的routes.rb中:

root 'routes#root'

附:示例期望使用Devise,但您可以根据需要自定义它.

猜你在找的Ruby相关文章