我有一個基本的「公司」模型CRUD。爲了使公司的名稱顯示出來,我確實人類可讀的URL導致Ruby on Rails中的問題
def to_param
name.parameterize
end
然後我訪問http://localhost:3000/companies/american-express
它運行在公司的控制器show
行動。
顯然,這並不工作,因爲show
方法如下:
def show
@company = Company.find_by_id(params[:id])
end
的params[:id]
是american-express
。該字符串不存儲在任何地方。
當我保存記錄時,是否需要在數據庫中存儲短字符串(即「american-express」)?或者有什麼方法可以在不將數據庫字符串保存在數據庫中的情況下檢索公司數據?
有趣的解決方案。在參數的開頭留下「id」是很有趣的。我剛跑了12美國快車「.to_i」,然後返回了12。 – 2010-06-18 11:23:33
甜而簡單!謝謝@Björn。 – 2010-06-18 11:28:12