ruby-on-rails - 将 ruby​​ 参数合并到字符串中会引发错误的 url 错误

标签 ruby-on-rails ruby

不确定我在这里做什么

def get_full_stats(id)
        riot_url = 'https://na.api.pvp.net/api/lol/na/v1.3/stats/by-summoner/#{id}/ranked?api_key=mykey'
        response = HTTParty.get(riot_url)
        json = JSON.parse(response.body)
        json
    end

在我的 show.html.erb 中,我调用以下内容

api = RiotApi.new
@info = api.get_full_stats(19380406)

视野又回到我身边wrong number of arguments (1 for 0)对于@info = api.get_full_stats(19380406)线。

我尝试将参数转换为字符串 @info = api.get_full_stats('19380406')但仍然引发相同的错误。

这是怎么回事?

重新启动服务器后,我现在似乎有了 URI::InvalidURIError相反,错误。

最佳答案

您需要使用双引号才能进行字符串插值。例如,

def get_full_stats(id)
    riot_url = "https://na.api.pvp.net/api/lol/na/v1.3/stats/by-summoner/#{id}/ranked?api_key=mykey"
    response = HTTParty.get(riot_url)
    json = JSON.parse(response.body)
    json
end

关于ruby-on-rails - 将 ruby​​ 参数合并到字符串中会引发错误的 url 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31442193/

相关文章:

ruby-on-rails - carrierwave:在序列化动态属性上安装 uploader

sql - "Flexible"(?) Rails 数据库

ruby-on-rails - 将Rails ActiveRecord转换为原始SQL

ruby-on-rails - 如何为模型地理编码设置 VCR 全局磁带?

ruby-on-rails - 文档 RI 中标题的彩色格式

ruby-on-rails - 如何为具有重命名路径的嵌套资源编写 simple_form ?

ruby-on-rails - Rails I18n,检查翻译是否存在?

ruby-on-rails - 在 Sinatra 中使用 AWS::S3 列出存储桶

ruby-on-rails - Ruby 已经在使用我的模型的类名

ruby-on-rails - Pundit 范围界定,如何让成员只能看到他们的帖子?