User Page

by winson, about 1 year ago.

什麼是User Page?也許每個User都有一個自己的首頁,沒特別加工處理的話,網址多半像這樣:

http://demo.rails.org/user/show/1234 # 1234 means a user id.
這不是很容易完成嗎?那還有什麼問題呢?

當然有,這種網址太長、太醜、太不User Friendly,而且揭露了許多不該揭露的訊息。例如: 為什麼要讓別人知道處理User的controller叫做user?為什麼要顯示重要的user.id?這樣一來變成必須去擋user/edit/1234或user/delete/1234這類的處理。

如果可以進一步把網址上的controller、action都給扔了,直接顯示成user name應該很不錯吧,例如:

http://demo.rails.org/winson # winson means a user name.
那怎麼做呢?要改這幾個小地方:


  • Posted in Routing, on Saturday, June 02, 2007, at 08:21 PM.

Missing route on Rails

by winson, about 1 year ago.

處理404 not found的解法有很多,大概有幾種處理方式:

1. 在Application controller宣告一個method_missing,把所有找不到的method導過去處理。

2. 利用Exception handler。

3. 利用Route設定。

1和2大概除了程式不同之外,後續處理都一樣,都是放一個404 not found要用的網頁,而且還要在Route裡頭宣告,寫程式當然可以做很多你想要做的處理,但缺點是太過麻煩。


  • Posted in Routing, on Monday, May 21, 2007, at 09:55 AM.