以下三種方法,基本上都是一樣
1 2 3 4 5 6 7 8
| @message = Message.find(:first, :conditions => {:mid => params[:id]})
@message = Message.first(:conditions => {:mid => params[:id]})
@message = Message.find(params[:id])
|
經過上面提到因為預設主鍵名為 id,那如果表中的主鍵不是 id 那怎算呢? 方法大約就是如下
(注: 主鍵 = Primary Key)
1 2 3
| class [Model] < ActiveRecord::Base self.primary_key = "主鍵名" end
|
另外還有關於 Routes 這東西的一些小記, 在輸入 http://localhost:3000 後會看見的是 index.html
那如果想一開始就進入指定的控制器(Controller)?只要修改 config/routes.rb
1 2
| map.root :controller => "gbook"
|
另外關於 REST 的一些小記,要支援這個也是修改同一檔案
再來指定後, 就會產生對應 Routes 的 Action 給 Controller,而最方便的更是是自動產生了一些 Helpers 給 Views
如何查看這些東西呢,可以通過這個方法
1 2 3 4 5 6 7 8 9 10 11
| 1. 進入指令模式 (cmd) 2. 之後切換到 App 所在的目錄 3. 輸入 rake routes 4. 就會看見一整個表出現,格式就是 ------------------------------------------------------ helpers || HTTP || Verb || 產生的Path || 對應的Action ------------------------------------------------------ 5. 之後再在 helpers 後加上 _url or _path 或者傳入 id 的參數 <<Agile Web Development with Rails.3rd Edition>> - 提到 enabling you to use helper functions such as "articles_url" - 換言之應該用 _url ?
|
例子圖片:
