我将rgeo
gem 与activerecord-postgis-adapter
用于某些列,并且我希望更改现有列的选项
请允许我以这种方式显示它,在 schema.rb 文件中,目前这是记录该列的行
t.spatial "shape", :limit => {:srid=>0, :type=>"multi_polygon"}
所以这个专栏有一些 postgis 认可的特殊元标记选项。
我想将这些:shape
列的默认 srid 设置0
为4326
。我想通过迁移来做到这一点,或者甚至更好,以便能够单独设置这些点的值。目前,我还没有在 RGeo 文档中找到 :srid 标签的 setter 方法,只有一个阅读器。所以我认为我最好的选择是迁移。
我试过这个:
change_column :parcels, :shape, :srid, 4326
但是得到了这个错误:
== AddSridOptToShapes: migrating =============================================
-- change_column(:zones, :shape, :srid, 4326)
rake aborted!
An error has occurred, this and all later migrations canceled:
can't convert Symbol into Integer
我知道可以通过执行一串 SQL 来解决这个问题,但我希望活动记录也能提供一种方法