【发布时间】:2014-12-09 04:33:48
【问题描述】:
我有一个 Company 和一个 User 模型,两者都通过 friendly_id 使用 slug。确保 Slug 在两种模型中都是唯一的。
我想要网址:
http://www.example.com/any_company_name
http://www.example.com/any_user_name
例如/apple 和 /tim
我不确定如何在 Rails 中实现这一点。
我尝试了以下各种排列:
routes.rb:
resources :users, path: ''
resources :companies, path: ''
get '*search', to: 'my_controller#redirect'
和
my_controller#redirect:
@company = Company.friendly.find(params[:search])
redirect_to @company if @company
@user = User.friendly.find(params[:search])
redirect_to @user if @user
但是我无法让它工作。我可以让/apple 重定向到/companies/apple 和/tim 重定向到/users/tim(通过删除path: '' 选项)但这不是我想要实现的。
【问题讨论】: