我刚刚开始处理具有位置状态名称的任务。作为针对全球受众的项目,我们需要使用其州名来查找国家/地区。使用country_select gem作为项目的国家/地区下拉列表,其中countries gem作为其依赖项,因此使用相同的方法填充州和国家/地区名称。
现在从状态名称测试实现中查找国家名称如下:
def self.get_country(state=nil)
unless state == nil
ISO3166::Country.all.each do |cc|
c = ISO3166::Country.find_country_by_alpha2(cc[1])
c.states.each do |s|
return c if s[1]["name"].downcase == state.downcase
end if c.present?
end
end
nil
end
哪个迭代太多,请建议更好地做或者其他任何方式。后来我想在数据库中添加这些作为国家和州的简单快速查询。
欢迎任何建议。谢谢!