0
我params[:type]
等於item
(單數)如何動態修改Rails路徑名?
我需要給用戶發送到
items_path(name: params[:name])
我需要變複數的路徑params[:type]
一部分,並與我的觀點將其合併以獲得我的鏈接的權利,以及我正在努力做到這一點。
我params[:type]
等於item
(單數)如何動態修改Rails路徑名?
我需要給用戶發送到
items_path(name: params[:name])
我需要變複數的路徑params[:type]
一部分,並與我的觀點將其合併以獲得我的鏈接的權利,以及我正在努力做到這一點。
這取決於。對於無條件多元化,你可以這樣做:
plural = params[:type].pluralize # => 'items'
route_method = "#{plural}_path" # => 'items_path'
public_send(route_method, name: params[:name])
但它似乎不是一個非常安全的解決方案給我。以用戶輸入並執行它爲例,總是在我頭腦中敲響一個鐘。也許,一些白名單會更好(更可讀)
path = case params[:type]
when 'item'
items_path(name: params[:name])
when 'foobar'
foobars_path
else
fail 'Unknown type'
end
我懷疑它與發送有關。謝啦。 –