Ruby on rails 4 rails g使用postgres前缀迁移具有模式名称的命令

Ruby on rails 4 rails g使用postgres前缀迁移具有模式名称的命令,ruby-on-rails-4,postgresql-9.5,Ruby On Rails 4,Postgresql 9.5,我已经有一段时间没有和postgres合作了,我在一个我刚刚开始工作的现有项目上遇到了这个问题 当我运行railsgmigrate时,命令成功完成;但是,它会在db/structure.sql上生成大量差异。不同之处在于,修改后的文件在每个命令前面显式地加上postgres公共模式前缀 例如,我得到了如下许多差异: -创建表客户( +创建表public.customer( 如何抑制此行为?这似乎是由至少Postgresql 9.4.17中的a安全修补程序(其他版本也可能受到影响)引起的,该修

我已经有一段时间没有和postgres合作了,我在一个我刚刚开始工作的现有项目上遇到了这个问题

当我运行
railsgmigrate
时,命令成功完成;但是,它会在
db/structure.sql
上生成大量差异。不同之处在于,修改后的文件在每个命令前面显式地加上postgres公共模式前缀

例如,我得到了如下许多差异:

-创建表客户(
+创建表public.customer(


如何抑制此行为?

这似乎是由至少Postgresql 9.4.17中的a安全修补程序(其他版本也可能受到影响)引起的,该修补程序在使用
$pg\u dump
时更改了
搜索路径的行为


您可以尝试降级到以前的修补程序版本(例如
9.4.16
),它保留了以前的行为,或者冒险使用此新版本更新您的模式。

谢谢您的回答,尼克!问题可能与您提到的修补程序有关,但我认为这不是全部内容。
structure.sql
diff包含一行内容,内容为从数据库版本9.5.10中转储的
.看来最后一个犯下错误的人是9.5.10版,而我是9.5.12版。这也影响到9.6.8版。多亏了尼克的澄清。