2014-02-09 2 views
1

국가 보석을 https://github.com/hexorx/countries 나라를 사용하여 alpha2 국가 이름에서 국가 이름을 얻으려고합니다. 그러나 그것은 [대상 물체]로서 온다. 여기 내 코드가있다.레일 Alpha2 국가를 실제 국가 이름으로

render :json => @countries.map { |c| [c.id, ::ISO3166::Country[c.country]] } 

이 국가 컬럼에 저장됩니다 예상대로 aplha2 벌금을, 반환

대신 Country 인스턴스의 해시 ( data)를 통과해야
render :json => @countries.map { |c| [c.id, c.country] } 
+0

정의되지 않은 메서드'지도 'NilClass, 당신은 그 오류 메시지가 의미 english_short_name – JAML

+0

을하려고 할 때'@의 countries'는'nil'입니다 . – falsetru

+0

'render : json => @ countries.map {| c | [c.id, :: ISO3166 :: 국가 [c.country] .name]}'? – falsetru

답변

2

. 당신은 단지 국가 이름을 원하는 경우

render :json => @countries.map { |c| [c.id, ::ISO3166::Country[c.country].data] } 

, name 사용

render :json => @countries.map { |c| [c.id, ::ISO3166::Country[c.country].name] } 
전무에 대한
+0

훌륭하게, 이것이 작동합니다 .name은 내가 필요한 것입니다. 시간 내 주셔서 감사합니다. – JAML