2013-11-15 1 views
4

ActiveSupport 옵션 encode_big_decimal_as_string을 사용하고 싶습니다. 모델에 넣어야합니까? 모델 인스턴스에서이 메서드를 호출합니까? 내가 어딘가 config에 배치합니까? ActiveSupport 옵션은 무엇이며 어떻게 사용할 수 있습니까?ActiveSupport encode_big_decimal_as_string

답변

-1

나는 당신이 environment.rb 파일에서 그렇게한다고 믿습니다.

이렇게하면 효과가 있습니다. 나는 지금 그것을 시험 할 방법이 없다.

Rails::Initializer.run do |config| 
    config.active_support.json.encode_big_decimal_as_string = true 
end 
+0

서버를 시작할 때 오류가 발생했습니다 : 초기화되지 않은 Rails :: Initializer (NameError) – Rob

2

레일 4.0에서는 다음과 같이 application.rb에 설정할 수 있습니다 : 레일 4.1에서

config.active_support.encode_big_decimal_as_string = false 

ActiveSupport.encode_big_decimal_as_string 옵션은 사용되지 않습니다. 이 기능은 activesupport-json_encoder 보석으로 추출되었습니다.

7

Rails 4.0에서는 이러한 답변이 나에게 도움이되지 않았습니다. @ 타일러 - 응우 말했다

# config/application.rb 

... 
module AppName 
    class Application < Rails::Application 
    ... 
    ActiveSupport::JSON::Encoding.encode_big_decimal_as_string = false 
    ... 
    end 
end 

으로이 레일 4.1 deprecated을되고, 추출 :

ActiveSupport::JSON::Encoding.encode_big_decimal_as_string = false 

과 같이, 응용 프로그램 설정에이 줄을 추가 : 여기에 레일 4.0에서 작동하는 것입니다 이 보석에 : ActiveSupport JSON Encoder. 4.1의 설정에 대해서는 gem 문서를 참조하십시오.

+3

레일 4.1의 경우 위의'config/application.rb' 수정 외에도'gem 'activesupport-json_encoder''를 gemfile에 추가하십시오 . –

관련 문제