首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails City列表

Rails City列表
EN

Stack Overflow用户
提问于 2009-11-12 18:24:48
回答 2查看 690关注 0票数 0

我是rails的新手,我正在处理一项任务,它需要与这里的Cities选项卡类似的功能:http://haystack.com/cities。我已经搜索了所有的书,但似乎无法理解使这一切成为可能的逻辑。我唯一能想到的就是逆向工程电子商务代码来做我想做的事情。有人有什么好点子吗?

EN

回答 2

Stack Overflow用户

发布于 2009-11-13 05:03:33

您至少需要从geonames.org或zipcodeworld.com之类的地方获取城市/州数据的列表。然后,您必须将城市映射到州,将州映射到国家,然后找出一种简洁的显示方式,就像haystack.com站点一样。我猜测,排名靠前的城市要么根据每个城市的用户请求数量进行加权,要么简单地根据所谓的热门城市进行加权。

大多数情况下,它只涉及如何将这些数据类型(城市、州、国家)中的每一个关联在一起。除了如何布局之外,实际的显示是很简单的。基本上在你的数据库中有一个城市,州和国家表,然后创建类似这样的模型:

代码语言:javascript
复制
class Country
  has_many :states
end

class State
  belongs_to :country
  has_many :cities
end

class City
  belongs_to :state
end

编辑:将其与用户关联:假设一个用户只能属于一个城市(尽管多个城市也不是那么困难),它将如下所示:

代码语言:javascript
复制
class User 
   belongs_to :city 
end 

class City
   belongs_to :state
   has_many :users 
end 

你应该能够做这样的事情:

代码语言:javascript
复制
usr = User.find(a_user_id) 
usr.city                 #New York City 
usr.city.state           #New York 
usr.city.state.country   #United States
票数 2
EN

Stack Overflow用户

发布于 2009-11-12 22:47:46

可能是这样的:

http://www.geonames.org/export/

就是你要找的?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1721289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档