2014-02-09 59 views
1

我正在使用国家宝石https://github.com/hexorx/countries并尝试从alpha2国家名称中获取国家/地区名称。但它来作为[对象对象]。这是我的代码。Rails Alpha2国家到真正的国家名称

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

这将返回预期aplha2罚款,这是保存在国家列:

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 :: Country [c.country] .name]}'? – falsetru

回答

2

你需要传递的,而不是Country例如哈希(data)。

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