在 sitemap.rb 中从 route.rb 获取路径时,如何确定任何控制器路径的 http 方法?

How to determine http method of any controller path when fetch paths from route.rb in in sitemap.rb?

我想生成具有 300 多个 URL 路径的网站的站点地图。因此,我使用站点地图生成器从 routes.rb 文件中获取 URL 路径。现在我不想让 SEO 爬过我的 post url。所以,我想确定 sitemap.rb 中控制器路径的 Http 方法类型。怎么做?

我尝试使用 route.path.spec.left.memo.request_method_match 获取 http 方法,但是出现了 NoMethodError。

请求方法也叫verb,所以你可以这样做:

Rails.application.routes.routes.collect do |route|
  "#{route.name} = #{route.defaults} = #{route.verb}"
end

rails 的不同版本可能略有不同,但是一旦您找到路线,请查找 verb。 (查看文档:https://www.rubydoc.info/docs/rails/4.1.7/ActionDispatch/Journey/Route

我认为这为您提供了足够的信息来继续。