gpt4 book ai didi

ruby-on-rails - 根据格式路由到不同的操作

转载 作者:太空宇宙 更新时间:2023-11-03 17:42:14 24 4
gpt4 key购买 nike

我想根据格式路由到不同的 Controller 操作,即/phones/1.json 执行不同的操作,/phones/1 执行不同的操作

例如,我希望 GET /phones/1.json 转到 show_json 操作并 GET /phones/1显示 Action

最佳答案

这就是respond_to用于:

respond_to do |format|
format.json { show_json }
format.html
end

如果您明确想要不同的操作,这违反了 Rails 约定,那么您需要添加 route constraints :

get 'phones/:id.:format', constraints: { format: 'json' }, to: '...#show_json'
get 'phones/:id', to: '...#show'

这确实打破了每个 REST 操作具有单一 Controller 操作的 Rails 模型,所以我建议不要这样做。

应该有一个resources :phones 路由来为您处理所有默认设置。您可以使用 respond_to 从那里触发任何自定义行为。

关于ruby-on-rails - 根据格式路由到不同的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57731207/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com