반응형
루비 해시 개체를 JSON으로 변환하려면 어떻게 해야 합니까?
루비 해시 개체를 JSON으로 변환하려면 어떻게 해야 합니까?그럼 아래 예를 들어 보겠습니다만, 동작하지 않는 것입니까?
루비닥을 보고 있었는데Hash오브젝트에는 다음이 없습니다.to_json방법.하지만 나는 레일즈가 지원하는 블로그를 읽고 있다.active_record.to_json또,hash#to_json.나는 이해할 수 있다.ActiveRecordRails 객체입니다만,HashRails의 네이티브가 아니라 순수한 Ruby 객체입니다.그래서 Rails에서는hash.to_json순수한 루비는 아니구요?
car = {:make => "bmw", :year => "2003"}
car.to_json
Ruby의 많은 장점 중 하나는 기존 클래스를 자신만의 방법으로 확장할 수 있다는 것입니다.이것을 「클래스 재개」 또는 「원숭이 패칭」이라고 부릅니다(다만, 후자의 의미는 다양합니다).
여기를 봐주세요.
car = {:make => "bmw", :year => "2003"}
# => {:make=>"bmw", :year=>"2003"}
car.to_json
# NoMethodError: undefined method `to_json' for {:make=>"bmw", :year=>"2003"}:Hash
# from (irb):11
# from /usr/bin/irb:12:in `<main>'
require 'json'
# => true
car.to_json
# => "{"make":"bmw","year":"2003"}"
보시는 바와 같이json마법처럼 방법을 가져왔다to_json델에게Hash.
require 'json/ext' # to use the C based extension instead of json/pure
puts {hash: 123}.to_json
를 사용할 수도 있습니다.JSON.generate:
require 'json'
JSON.generate({ foo: "bar" })
=> "{\"foo\":\"bar\"}"
아니면 그 가명,JSON.unparse:
require 'json'
JSON.unparse({ foo: "bar" })
=> "{\"foo\":\"bar\"}"
파일 상단에 다음 행을 추가합니다.
require 'json'
다음으로 다음을 사용할 수 있습니다.
car = {:make => "bmw", :year => "2003"}
car.to_json
또는 다음을 사용할 수 있습니다.
JSON.generate({:make => "bmw", :year => "2003"})
언급URL : https://stackoverflow.com/questions/3183786/how-to-convert-a-ruby-hash-object-to-json
반응형
'programing' 카테고리의 다른 글
| JSON 개체 내 Javascript 검색 (0) | 2023.02.16 |
|---|---|
| $.199에서 $160까지 (0) | 2023.02.16 |
| react-router-dom v4의 여러 네스트 루트 (0) | 2023.02.16 |
| self.tableView.reloadData()가 Swift에서 작동하지 않음 (0) | 2023.02.16 |
| AJAX: 폼 필드에 입력할 때 검색 지연 (0) | 2023.02.16 |