由于遵循StandardError,无法转储表“数据”

时间:2016-01-29 11:01:07

标签: ruby-on-rails postgresql activerecord

我的Rails应用程序有一个远程数据库,我在这里创建和存储独立于应用程序的表,它是“无模型”的,我不希望或需要这些表的模型或ORM。要访问数据,我使用简单的ActiveRecord::Base.connection.execute(query)命令。

我的schema.rb有很多评论消息:

# Could not dump table "geographic_data" because of following StandardError
#   Unknown type 'geometry(MultiLineString,4326)' for column 'geom'

我的问题/怀疑:

如果我安装了ActiveRecord PostGIS Adapter,它是否会清除我在这些非模型表中已有的所有数据?这是一种可能的情况吗?

1 个答案:

答案 0 :(得分:2)

理论上它不应该因为你只运行rake db:schema:dump来获取所有模式,而是为了安全起见 - 在staging / development环境中更好地测试它。

如果除了模式转储之外不需要该适配器,或者它没有完全覆盖它(例如,如果你有一些触发器/存储函数等) - 你可以切换到使用sql格式的rails模式在config/application.rb

config.active_record.schema_format = :sql