gpt4 book ai didi

ruby-on-rails - 在 routes.rb 中使用带有正斜杠的字符串作为单个参数

转载 作者:行者123 更新时间:2023-12-04 03:14:39 25 4
gpt4 key购买 nike

抱歉这个令人困惑的标题 :) 我有一个资源 ComatosePage(用于 comatose cms 插件),它有一个名为 comatose_pages 的表,其中有一个字段 'full_path',其值如下:"en/home/logged-in/subscriber/school-top" 设置一个路由,这样我就可以使用这个 full_path 字段从数据库加载一个 ComatosePage,而不是标准的 id 字段,这样这个 url:

/comatose_admin/en/home/logged-in/subscriber/school-top

加载 comatose_admin Controller 的编辑操作,将 comatose_admin/之后的所有内容作为参数传递,即为 rails 生成此内容:

Parameters: {:controller => "comatose_admin", :action => "edit", :full_path => "en/home/logged-in/subscriber/school-top"}

复杂之处在于字符串被正斜杠分开,我认为这会混淆路由。我可以设置路由以获取“comatose_admin/”之后的所有内容并将其放入单个参数中吗?

最佳答案

您可以在路由中使用通配符来匹配正斜杠。尝试这样的事情:

"/comatose_admin/*full_path"

然后 params[:full_path] 应该包含请求路径的其余部分。

参见 Route Globbing

关于ruby-on-rails - 在 routes.rb 中使用带有正斜杠的字符串作为单个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4136189/

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