2014-05-24 22 views
2

我试图实现,以便在进行地理编码和/或反向地理编码之前动态设置语言,现在,我在应用程序的初始化程序中设置语言。Rails地理编码器动态设置语言和单位

Geocoder.configure(

    :units => :km, 
    :language => :en 
) 

我想它,这样的语言会被动态设置,例如:

Geocoder.configure(

    :units => :km, 
    :language => lambda {|something| I18n.locale} 
) 

没有任何人知道如何可以做到这一点?

+0

' :language => I18n.locale.parameterize.underscore.to_sym'不工作? – matanco

+0

您正在使用哪种地理编码器功能?他们大多数都有一个单位参数。什么是语言?从未见过这种选择。 – phoet

+0

@phoet:语言以某种语言返回结果,英语,德语等 –

回答

4

looking at the code看来这是不可能的。

你虽然可以做什么,是在每次调用重新配置,以谷歌

Geocoder.configure(language: :en) 
Geocoder.search("Nantes, France") 

这种很烂。我认为API应该允许你通过像:unit这样的参数。

我创建了此功能的拉请求https://github.com/alexreisner/geocoder/pull/654

UPDATE

因此它实际上是可能的:

Geocoder.search("Nantes, France", params: {language: :fr}) 

再加上还有另外一个变化来袭,支持这个https://github.com/alexreisner/geocoder/pull/655