gpt4 book ai didi

ruby-on-rails - 在 Rails 的 URL 中将 "%20"替换为 "-"

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

我正在使用 Rails 开发 Web 应用程序。为了美观,我需要将 %20 替换为 -

之前:http://localhost:3000/movies/2006/Apna%20Sapna%20Money%20Money

之后:http://localhost:3000/movies/2006/Apna-Sapna-Money-Money

无论如何我可以在 rails 中实现这个吗?

最佳答案

你应该使用 URI.parse将其分解成多个部分,然后仅更改路径部分:

require 'uri'
u = URI.parse(url)
u.path = u.path.gsub('%20', '-')
url = u.to_s

只是一个简单的gsub在整个 URL 上可能会工作正常,但多一点偏执可能会为您省去一些困惑和痛苦。此外,如果您只是替换文字字符串而不是正则表达式,则可以使用字符串作为 gsub 的第一个参数并避免一些转义问题:

The pattern is typically a Regexp; if given as a String, any regular expression metacharacters it contains will be interpreted literally, e.g. '\\d' will match a backlash followed by d, instead of a digit.

关于ruby-on-rails - 在 Rails 的 URL 中将 "%20"替换为 "-",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6742244/

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