ruby-on-rails-4 – rails g使用带有模式名称的postgres前缀命令进行迁移

有一段时间没有使用postgres,我在刚开始使用的现有项目中遇到了这个问题.

当我运行rails g migrate时,命令成功完成;但是,它会在db / structure.sql上生成一大堆diff.不同之处在于修订后的文件使用postgres公共模式显式地为每个命令添加前缀.

例如,我得到许多像这样的差异:

-CREATE TABLE客户(
 CREATE TABLE public.customer(

我怎么能抑制这种行为?

最佳答案
这看起来是由至少Postgresql 9.4.17 release from the 1st March中的安全补丁引起的(其他版本也可能受到影响),这改变了使用$pg_dump时search_path的行为.

您可以尝试降级到先前的修补程序版本(例如9.4.16),这会保留以前的行为,或者使用此新版本进行插入并更新您的架构.

转载注明原文:ruby-on-rails-4 – rails g使用带有模式名称的postgres前缀命令进行迁移 - 代码日志