2011-07-14 48 views
1

所以,我有我的表users每條記錄​​都有一個username如何爲Rails 3中的每個用戶提供不同的視圖?

,我有我的根到控制器main和行動`指數

root :to => 'pages#main' 

所以如果去http://mydomain.com它會告訴我main#index頁我也有aboutcontact頁面。

,但如果我去http://mydomain.com/Mr_Nizzle它爲我的用戶Mr_Nizzle這是對users#show(就像例子)的頁面,以及爲其他用戶顯示每個用戶的頁面...

是不是如果我去=>

match ':username' => 'users#show' 

match 'contact_us' => 'main#contact' 

match 'about' => 'main#about' 

root :to => 'pages#main' 

所以我可以離開所有的邏輯路線,而不是在主控制器?

謝謝。

回答

1

我不確定你的問題,但this可能會有所幫助。我認爲(至少對於大約和接觸)正確的語法是match '/contact_us' => 'main#contact(大約相同但替換接觸大約),root :to => 'pages#main'是正確的(這與做匹配'/'=>'pages#main'相同)

你在問match ':username' => 'users#show'什麼?你想(例如)一個網址是http://mydomain.com/users_username?其中users_username是他們正在導航到的用戶配置文件的名稱?如果是這樣,我認爲你可以做類似match '/:username' => 'users#show'但我不完全確定。

回到我上什麼可行,什麼不可行

+1

嗯,是用'users_username'正是WY我試圖做到這不得不把我的路線顛倒了'about'的優先級的事情和'contact_us',否則它會將它們作爲':username' –

相關問題