gpt4 book ai didi

ruby - 没有将数组隐式转换为字符串?

转载 作者:数据小太阳 更新时间:2023-10-29 08:38:04 25 4
gpt4 key购买 nike

我有一个 Sinatra 应用程序,它具有以下获取传入 URL 的 GET 方法:

get  %r{/html/(.+)}  do 
url = params[:captures] # stores url => http://www.example.com

gethtml(url)
end

但是,当调用 gethtml(url) 时,它会引发错误 Sinatra no implicit conversion of Array into String

gethtml 接受诸如 http://example.com 之类的输入。

我知道这是一个数据类型转换问题,我尝试调用 to_s 但没有成功。

如有任何帮助,我们将不胜感激。

最佳答案

params[:captures] 返回一组字符串,而 get_html 最有可能接受一个 URL 作为字符串。

因为您想使用第一个匹配的组作为 URL:

get %r|/html/(.+)| do
get_html params[:captures].first
end

这与 the Routes section of the README 中的使用正则表达式匹配的路由示例一致.

关于ruby - 没有将数组隐式转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22521824/

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