Re: [問題] Rails route 的 prefix 欄位

看板Ruby作者 (南洋大兜蟲)時間10年前 (2014/08/29 03:14), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/5 (看更多)
我認為不是 method_missing 的用法 # actionpack/lib/action_dispatch/routing/route_set.rb:271 def define_named_route_methods(name, route) define_url_helper route, :"#{name}_path", route.defaults, name, PATH define_url_helper route, :"#{name}_url", route.defaults, name, FULL end 還是我誤會了你的意思? ※ 引述《JokerCatz (JokerCatz)》之銘言: : ※ 引述《t3825288 (猩爺)》之銘言: : : 想請問當我們在 Rails 當專案底下輸入 : : rake routes時, 他會秀出網站中現有的路徑 : : 其中有一個 prefix 欄位是甚麼 : : 書上是寫說他是 APP 內部的名稱 : : 可以直接呼叫它作為我們的路徑 : : 請問有例子嗎 : : 比如說我想設首頁 : : root to:'users#index' : : 我原本以為可以取代成 : : root to:'users' 之類的 : : 結果好像用法不是這樣 : : 請問有哪個網站可以參考這個 prefix 的用法嗎? : : 謝謝 : prefix是method_missing的用法,請參閱Ruby,以下解釋看法 : Prefix Verb URI Pattern : edit_dashboard_profile_index GET /dashboard/profile/edit(.:format) : Controller#Action : dashboard/profile#edit : 太長寫成兩段 : 在controller或view內使用edit_dashboard_profile_index_path會得到後面的URI網址 : 簡單的來說就是Prefix加上_path就可以得到網址的意思,而所有餵網址的地方都可以餵 : String的url進去 : 好處是Rails可以幫你檢查相對網址是否存在的問題,缺點是效能低很多 : 至於你最上面的demo,如果你懂舊版的寫法就知道前因後果的 : root to:'users#index' : 全等於 : root :controller => 'users' , :action => 'index' : 所有的to都可以這樣翻譯就是了... : RailsFun.tw的課已經上到第二個cycle了,如果你想參加可以過來就是 :) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.219.118.91 ※ 文章網址: http://www.ptt.cc/bbs/Ruby/M.1409253282.A.365.html
文章代碼(AID): #1J_t-YDb (Ruby)
文章代碼(AID): #1J_t-YDb (Ruby)