2015-01-09 1 views
1

내 레일 앱에서 API에서 일부 데이터를 가져 오는 데 country-code, currency-code, ISO locale code을 사용하고 싶습니다. 사용자가 어디서나 내 사이트를 방문하면이 정보를 어떻게 동적으로 얻을 수 있습니까?국가 코드별로 ISO 통화 코드를 얻는 방법은 무엇입니까?

나는 geocoder gem을 사용했습니다. request.location으로 위치 정보를 얻고이 보석을 사용하여 country-code을 얻을 수 있습니다. 이제 남은 정보를 얻는 방법을 모르겠다. currency-code & ISO locale code ?? 아무도 나를 도울 수 없거나 나를 안내 할 수 있습니까 ??

나는 이것을 보았습니다.이 모든 정보를 제공해 줄지 확실하지 않습니다. money gem 사전에

감사합니다 :)

답변

6

나는 대답을 시도했다 @Prakash Murthy's 대답. 그러나 이것에는 많은 문제가 있습니다 http://www.currency-iso.org/dam/downloads/table_a1.xml 모든 나라의 적절한 이름이없는 것을 발견했습니다. 그리고 어떤 나라는 저를 혼란스럽게 만든 복수의 currency_code을 가지고 있습니다. 하지만 결국 데이터베이스를 만들지 않고이 단일 countries gem에 의한 해결책을 발견했습니다.

country_name = request.location.data['country_name'] # got country name 
c = Country.find_country_by_name(country_name) # got currency details 
currency_code = c.currency['code'] # got currency code 

내 자신의 질문에 대답 죄송하지만 누군가가 그의/그녀의 시간을 낭비하지 같은 문제에 대한 나처럼 붙어 있다면 나는 미래에, 그래서 여기에 게시 한 : 여기

내가 솔루션을 달성하는 방법이다.

+1

답변을 갖고 게시되지 않았을 때 자신의 질문에 대답하는 것이 올바른 일입니다. 감사. –

+0

누락 된 통화 정보가 많은 통화 보석을 사용하기 때문에 국가 보석을 사용하는 것을 권장하지 않습니다. https://github.com/hexorx/currencies/pulls –

1

currency-code & ISO locale code은 매우 거의 변하지 않는 정적 데이터입니다 - 모든 경우에, 최고의 데이터베이스 테이블 내에 저장하여 시스템 내에서 정적 정보로 처리됩니다. 이러한 데이터를 관리하기위한 CRUD 인터페이스를 제공하는 것이 좋습니다. 환율 코드

한 가지 가능한 소스 : http://www.currency-iso.org/en/home/tables/table-a1.html

List of All Locales and Their Short Codes? 모든 로케일 코드의 목록보기에 대한 자세한 내용이 있습니다.

+0

드물게 변경되는 것에 동의하지만, "정적 데이터"*로 간주하는 것이 좋습니다. 프로젝트가 5 년 이상 지속될 경우 많은 불일치가 발생할 수 있습니다. 주기적으로 목록을 업데이트해야합니다. – ndn

+0

감사합니다. 그것이 실제로 유효한 점입니다. 나는 그것을 고려하지 않았다. –

관련 문제