寻找纬度和经度字段的地理编码器,但它们不存在

时间:2015-10-03 15:37:38

标签: ruby-on-rails rails-geocoder

我正在使用Rails Geocoder Gem,Rails 4.2和MySqL。我想检测有多少旅行与某些箱子兼容。

旅行和方框包含以下字段:departure_latdeparture_longarrival_addressarrival_latarrival_longTravel.near([Box.last.departure_lat, Box.last.departure_long], 50)

当我想检查旅行是否与盒子兼容时,我尝试使用此查询:

departure_address

我知道它只考虑arrival_address而不是{{1}},但无论如何它都不起作用,因为Geocoder试图在表'travels'中找到'纬度'字段,即使我称之为'dep_lat '等经度。

我想解决这个问题,然后考虑将它与到来相结合。谢谢!

1 个答案:

答案 0 :(得分:0)

您需要向GeoCoder指定您不想使用其默认的p = raw_input("Enter password") if len(p) <=6: # abCd1, Psw44 etc. print "Your password is weak" elif len(p) >6 and len(p)<=12: ## Password, pAssphrase etc. if p.islower(): #password, passphrase print "Length is ok, but you should use mixed case or whatever else" elif p.isupper() or p.isdigit(): #PASSWORD, PASSPHRASE (is upper), 712356433 (is digit) print "Another warning message" #other elifs and else elif len(p)>12: #l0ngPasswordjumped0v3r1azyrabbit if p.isalpha() or p.isalnum(): #myReallyLongPassword (is alpha), l0ngPasswordjumped0v3r1azyrabbit (is alnum) print "Really strong" elif (not p.islower()) and (not p.isuppper()) and (not p.isdigit()): #ParaPsychOlOGY (is not lower, is not upper, and is not digit) print "Another strong" #other elifs and else #other conditional lat属性名称。

为此,请将以下行添加到模型中:

lon

你会为你的到来做同样的事,但改变当然的名字。

来自文档:

  

您不会停留使用纬度和经度数据库列名称(使用ActiveRecord)。例如:

     

geocoded_by:address,:latitude =&gt; :lat,:longitude =&gt; :lon #ActiveRecord

有关此内容的更多信息,请参阅GeoCoder文档的Model Configuration部分。