request_url ||= URI_FORMATS[:home_page] % {
base_uri: AppConfig.test_api['base_url'],
end_point: AppConfig.test_api['end_points']['home_page'],
client_id: AppConfig.test_api['client_id'],
}
我正在通过String#%rubocop错误获取“收藏夹”格式。 任何想法如何解决这个问题。我只是在这里查看了错误原因
https://quynhcodes.wordpress.com/2017/03/29/string-interpolation-in-ruby/
但是我在这里不使用任何字符串插值法。
那么我们如何解决这个问题。
答案 0 :(得分:2)
首先,这与字符串插值无关,而与字符串格式化有关。 rubocop Ruby style guide说:
在相当神秘的
sprintf
方法上更喜欢使用format
及其别名String#%
。
这意味着改变
request_url ||= URI_FORMATS[:home_page] % {
base_uri: AppConfig.test_api['base_url'],
end_point: AppConfig.test_api['end_points']['home_page'],
client_id: AppConfig.test_api['client_id'],
}
到
request_url ||= format(
URI_FORMATS[:home_page],
base_uri: AppConfig.test_api['base_url'],
end_point: AppConfig.test_api['end_points']['home_page'],
client_id: AppConfig.test_api['client_id'],
)