Ruby on rails 无法转储表“;“数据”;因为下面的标准错误

Ruby on rails 无法转储表“;“数据”;因为下面的标准错误,ruby-on-rails,postgresql,activerecord,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 'ge

我的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适配器,它会清除这些非模型表中已有的所有数据吗?这是一种可能的情况吗?

理论上不应该这样做,因为您将只运行
rake db:schema:dump
来获取所有模式,但为了安全起见,最好在登台/开发环境中测试它

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

config.active_record.schema_format = :sql

如果意外获取列名并键入错误的方式,例如,
add\u column:people,:string,:first\u name
,而不是
add\u column:people,:first\u name,:string
,则会发生这种情况。