在routes.rb中發生以下代碼
resources :favorites do
member do
get :sort_by, constraints: {id: /name|date|number/}
end
end
就會產生
sort_by_favorite GET /favorites/:id/sort_by(.:format) favorites#sort_by {:id=>/name|date|number/}
在 「/收藏/:ID/sort_by」
URL,到位的:ID你可以通過'姓名'或'日期'或'號碼'。但我想,這不是你想要的。
所以,如果你想通過以下網址
/favorites?sort_by=name
/favorites?sort_by=date
/favorites?sort_by=number
然後,你必須寫在收藏控制器的索引行爲的一些條件。
def index
if ['name', 'date', 'number'].include?(params['sort_by'])
# your code goes here
else
# redirect to some where with error message
end
end
希望它會爲你工作:)
我用'/(name)|(date)|(number)/' – StupidDev