gpt4 book ai didi

postgresql - 本地机器上的 Postgres : rake db:migrate produces an error

转载 作者:行者123 更新时间:2023-11-29 13:59:13 25 4
gpt4 key购买 nike

我正在向新的 OSX 机器(10.9.3,RVM 和 Ruby 2.1.1)添加一个应用程序。我正在使用 postgresapp,就像在我的其他工作环境中一样,但是当我尝试迁移数据库时出现错误。

我在迁移之前执行了 rake db:droprake db:create(正确创建数据库)。

我什至无法完成第一次迁移,总是出现以下错误:

rake aborted!
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "templates" does not exist
LINE 5: WHERE a.attrelid = '"templates"'::regclass
^
: SELECT a.attname, format_type(a.atttypid, a.atttypmod),
pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
FROM pg_attribute a LEFT JOIN pg_attrdef d
ON a.attrelid = d.adrelid AND a.attnum = d.adnum
WHERE a.attrelid = '"templates"'::regclass
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum

完整要点:https://gist.github.com/andreimoment/f3a815099b5e3834338e#file-stacktrace

这是第一次迁移:

class CreateSites < ActiveRecord::Migration
def change
create_table :sites do |t|
t.string :name
t.string :url
t.string :status
t.integer :default_page_id
t.belongs_to :template
t.timestamps
end
end
end

数据库.yml:

development:
adapter: postgresql
encoding: unicode
database: myapp_development
pool: 5
timeout: 5000
username: myuser
password:

myuser有 super 用户,创建db,在postgresql中创建角色权限

我还使用 database=postgresql 创建了一个新的 Rails 应用程序,并且它的迁移工作正常。

有什么建议吗?

更新:我注释掉了 FactoryGirl gem,运行了包更新并且迁移完成了。

这可能是什么原因? FactoryGirl gems 会尝试初始化记录并可能导致 Mu 所建议的情况吗?

最佳答案

我有同样的问题,我在开发和测试环境中都使用工厂女孩。删除并重新创建数据库后,我无法使用 rake db:schema:load 重置我的数据库。

我可以确认从开发组中删除 FactoriGirl 可以解决此问题

关于postgresql - 本地机器上的 Postgres : rake db:migrate produces an error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24563702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com