我想进行基准测试,但是当我运行时
rake test:benchmark
我正在接受这种错误
ActiveRecord::StatementInvalid: PG::Error: ERROR: relation "contests" does not exist
LINE 5: WHERE a.attrelid = '"contests"'::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 = '"contests"'::regclass
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum
一定是迁移错误。但是当我跑步时
rake db:migrate
任何事情都会发生。我删除了测试数据库并运行
rake db:test:clone
之后再次运行基准测试,但它仍然给出错误。
我的 database.yml 文件是这样的
development:
adapter: postgresql
encoding: unicode
host: localhost
database: dummy_development
pool: 5
username: postgres
password: dum
test:
adapter: postgresql
encoding: unicode
host: localhost
database: dummy_test
pool: 5
username: postgres
password: dum
production:
adapter: postgresql
encoding: unicode
host: localhost
database: dummy_production
pool: 5
username: postgres
password: dum
当我备份开发数据库并用它恢复测试数据库时,我也会出错。我认为数据库架构不同,但我不知道如何做到这一点。谢谢