如何设置我的路由以像github的目录结构一样?

时间:2011-10-16 20:39:11

标签: ruby-on-rails routes

我想设置我的目录结构,如github有他们的:

website.com/user_name/project_name将是项目#show action。

如何使用我的路线文件?

因此website.com/user_name将是项目#index action。

感谢

1 个答案:

答案 0 :(得分:2)

首先是路线。

match ":username" => "projects#index"
match ":username/:project_name" => "projects#show"

然后,控制器。

class ProjectsController < ApplicationController
  def index
    @user = User.find_by_username!(params[:username])
    @projects = @user.projects
  end

  def show
    @user = User.find_by_username!(params[:username])
    @project = @user.projects.find_by_project_name!(params[:project_name])
  end
end

这很简单!