Ruby中String转Integer时,如何避免TypeError的困扰?
- 内容介绍
- 文章标签
- 相关推荐
本文共计245个文字,预计阅读时间需要1分钟。
目前获取Ruby Hash时遇到错误:无法将String转换为Integer。错误发生在edit_id行。我已经尝试过多种不同的解决方案,这些方案在SE上已发布类似问题,但遗憾的是,它们都没有效果。
我已经尝试过许多不同的解决方案,这些解决方案来自SE上已发布的类似问题,但不幸的是,它们都没有奏效
哈希:
{"downloadID"=>115, "PageID"=>nil, "title"=>"hi", "dlLink"=>"www.a.com", "imgSrc"=>"www.a.com", "caption"=>"aaaa", "dlLive"=>nil, "createdAt"=>nil, "user_id"=>7}
码:
#edit download put '/view1/downloadedit' do data = JSON.parse(request.body.read) puts data edit_id = data["downloadID"] puts edit_id @download = Download.get(:download_id => edit_id) puts data if @download.update(data) status 201 puts 'edit saved okay' else status 201 puts 'edit failed to SAVE' end end JSON.parse(request.body.read)为您提供了一个哈希数组.所以修复是edit_id = data [0] [“downloadID”].写p数据而不是put数据,你会看到数据是一个hash数组.
本文共计245个文字,预计阅读时间需要1分钟。
目前获取Ruby Hash时遇到错误:无法将String转换为Integer。错误发生在edit_id行。我已经尝试过多种不同的解决方案,这些方案在SE上已发布类似问题,但遗憾的是,它们都没有效果。
我已经尝试过许多不同的解决方案,这些解决方案来自SE上已发布的类似问题,但不幸的是,它们都没有奏效
哈希:
{"downloadID"=>115, "PageID"=>nil, "title"=>"hi", "dlLink"=>"www.a.com", "imgSrc"=>"www.a.com", "caption"=>"aaaa", "dlLive"=>nil, "createdAt"=>nil, "user_id"=>7}
码:
#edit download put '/view1/downloadedit' do data = JSON.parse(request.body.read) puts data edit_id = data["downloadID"] puts edit_id @download = Download.get(:download_id => edit_id) puts data if @download.update(data) status 201 puts 'edit saved okay' else status 201 puts 'edit failed to SAVE' end end JSON.parse(request.body.read)为您提供了一个哈希数组.所以修复是edit_id = data [0] [“downloadID”].写p数据而不是put数据,你会看到数据是一个hash数组.

