2010-02-04 107 views
2

我在我的應用程序中的用戶控制器,具有路由:如何在rails中創建自定義資源路徑?

map.resources :users 

這有我的用戶網頁住在/用戶/ 1,依此類推。

我想我的用戶頁面,住在/用戶/布雷克等

是什麼在軌道做這個正確的方式,這樣我可以說的link_to(@user)和正確的路徑產生的?

回答

2

在模型:

class User < ActiveRecord::Base 
    def to_param 
    login 
    end 
end 

在控制器:

class UsersController < ApplicationController 
    def show 
    @user = User.find_by_login(params[:id]) 
    #... 
    end 
end 

to_param在模型被用於通過ActionPack的構建URL此對象。在控制器中,您需要通過此字段獲取您的模型。