Ruby on rails 铁路-按大陆、国家和城市划分的地理代码
我正试图整理一份世界上最好的城市名录 我有:Ruby on rails 铁路-按大陆、国家和城市划分的地理代码,ruby-on-rails,rails-geocoder,Ruby On Rails,Rails Geocoder,我正试图整理一份世界上最好的城市名录 我有: ContinentsController < ApplicationController def index end def show end end CountriesController < ApplicationController def index end def show end
ContinentsController < ApplicationController
def index
end
def show
end
end
CountriesController < ApplicationController
def index
end
def show
end
end
CitiesController < ApplicationController
def index
end
def show
end
end
这在圣彼得堡不起作用,因为它只是对城市名称进行地理编码,而不是国家名称
提前多谢 您可以这样做:
class City < ApplicationRecord
geocoded_by :address
after_validation :geocode, if: :city_name_changed?
def address
"#{city_name}, #{country_name}"
end
end
地理编码不需要是一列,它可以是一个实例方法
class City < ApplicationRecord
geocoded_by :address
def address
[city_name, country_name].compact.join(', ')
end
end
你打算对美国加利福尼亚州圣何塞做些什么;美国亚利桑那州圣何塞;美国佛罗里达州圣何塞;美国伊利诺伊州圣何塞;美国新墨西哥州圣何塞;美国德克萨斯州圣何塞;还有美国的圣何塞?例如,它们都有相同的城市名称、国家和大陆。尽管可以说,这些城市都不是世界上最好的城市。此外,城市属于:大陆似乎多余。哈哈,谢谢@jvillian,这是真的!还需要包括地区/省/州!
class City < ApplicationRecord
geocoded_by :address
after_validation :geocode, if: :city_name_changed?
def address
"#{city_name}, #{country_name}"
end
end
def address
[street, city, state, country].compact.join(', ')
end
class City < ApplicationRecord
geocoded_by :address
def address
[city_name, country_name].compact.join(', ')
end
end