[RUBY-ON-RAILS] 어떻게 JSON에 루비 해시 객체를 변환하는?
RUBY-ON-RAILS어떻게 JSON에 루비 해시 객체를 변환하는?
어떻게 JSON에 루비 해시 객체를 변환하는? 나는 그것이 작동하지 않습니다 및 다음이 예제를 시도하고 그래서?
나는 RubyDoc보고 있었다 분명히 해시 객체는 to_json 방법이 없습니다. 그러나 나는 또한 active_record.to_json 지원 레일 및 블로그에 읽고있다하는 해시 #의 to_json을 지원합니다. 내가 액티브는 레일 목적은 이해할 수 있지만, 해시 레일 네이티브 아니라, 순수한 루비 객체입니다. 그래서 레일에 당신은 hash.to_json을 할 수 있지만 순수 루비 수 있습니까 ??
car = {:make => "bmw", :year => "2003"}
car.to_json
해결법
-
==============================
1.루비의 수많은 미묘한 중 하나는 자신의 방법과 기존의 클래스를 확장 할 수있는 가능성이다. 그는 "클래스 재개"또는 원숭이 패치 (변화 할 수있다 후자의 의미,하지만)라고합니다.
루비의 수많은 미묘한 중 하나는 자신의 방법과 기존의 클래스를 확장 할 수있는 가능성이다. 그는 "클래스 재개"또는 원숭이 패치 (변화 할 수있다 후자의 의미,하지만)라고합니다.
그래서, 여기 좀 봐 :
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을 가져왔다.
-
==============================
2.
require 'json/ext' # to use the C based extension instead of json/pure puts {hash: 123}.to_json
-
==============================
3.또한 JSON.generate을 사용할 수 있습니다 :
또한 JSON.generate을 사용할 수 있습니다 :
require 'json' JSON.generate({ foo: "bar" }) => "{\"foo\":\"bar\"}"
또는 별칭, JSON.unparse :
require 'json' JSON.unparse({ foo: "bar" }) => "{\"foo\":\"bar\"}"
-
==============================
4.파일의 상단에 다음 줄을 추가
파일의 상단에 다음 줄을 추가
require 'json'
그럼 당신은 사용할 수 있습니다 :
car = {:make => "bmw", :year => "2003"} car.to_json
양자 택일로, 당신은 사용할 수 있습니다 :
JSON.generate({:make => "bmw", :year => "2003"})
-
==============================
5.당신은 당신의 파일에 JSON 포함해야한다
당신은 당신의 파일에 JSON 포함해야한다
예를 들어,
require 'json' your_hash = {one: "1", two: "2"} your_hash.to_json
당신은 아래 링크를 방문 할 수 있습니다 JSON에 대한 자세한 지식을하십시오. JSON 학습
from https://stackoverflow.com/questions/3183786/how-to-convert-a-ruby-hash-object-to-json by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] turbolinks와 AngularJS와 사용 (0) | 2020.02.21 |
---|---|
[RUBY-ON-RAILS] 3 마이그레이션 레일 : 참조 열을 추가? (0) | 2020.02.21 |
[RUBY-ON-RAILS] 어떻게 독립적 인 로그 파일에 레일에 뭔가를 기록하려면? (0) | 2020.02.21 |
[RUBY-ON-RAILS] 방법의 RoR에서 업적 시스템을 구현하는 (0) | 2020.02.21 |
[RUBY-ON-RAILS] 저장하지 않고 update_attributes 레일? (0) | 2020.02.21 |