Fall back to a pure ruby update implementation if the tile_for_point
function is not present in MySQL.
This commit is contained in:
parent
05602fc9d7
commit
e7d834625c
1 changed files with 9 additions and 1 deletions
|
@ -4,7 +4,15 @@ class TileTracepoints < ActiveRecord::Migration
|
|||
add_index "gps_points", ["tile"], :name => "points_tile_idx"
|
||||
remove_index "gps_points", :name => "points_idx"
|
||||
|
||||
Tracepoint.update_all("latitude = latitude * 10, longitude = longitude * 10, tile = tile_for_point(latitude * 10, longitude * 10)")
|
||||
begin
|
||||
Tracepoint.update_all("latitude = latitude * 10, longitude = longitude * 10, tile = tile_for_point(latitude * 10, longitude * 10)")
|
||||
rescue ActiveRecord::StatementInvalid => ex
|
||||
Tracepoint.find(:all).each do |tp|
|
||||
tp.latitude = tp.latitude * 10
|
||||
tp.longitude = tp.longitude * 10
|
||||
tp.save!
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def self.down
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue