之前为了省事,数据库配置如下:
正常运行没什么问题。后来发现在运行rake test作单元测试时会报错,把拷贝过来就没有问题。不过rubyonrails.com上不允许匿名提交bug,还真麻烦。
另外发现config.active_record.schema_format = :ruby配置下,postgresql的timestamp字段默认值current_timestamp不能正确复制到数据库。经检查它是使用db:schema:dump复制下数据库模式,再使用db:schema:load生成测试数据库模式的,这个模块为了各数据库统一,会去掉那些不一致的默认值。解决办法是设置config.active_record.schema_format = :sql。
development_pgsql
:
adapter : postgresql
database : myproject_development
username : postgres
password :
development_mysql :
adapter : mysql
database : myproject_development
username : root
password :
development :
development_mysql
test :
adapter : postgresql
database : myproject_test
username : postgres
password :
production :
development
adapter : postgresql
database : myproject_development
username : postgres
password :
development_mysql :
adapter : mysql
database : myproject_development
username : root
password :
development :
development_mysql
test :
adapter : postgresql
database : myproject_test
username : postgres
password :
production :
development
正常运行没什么问题。后来发现在运行rake test作单元测试时会报错,把拷贝过来就没有问题。不过rubyonrails.com上不允许匿名提交bug,还真麻烦。
另外发现config.active_record.schema_format = :ruby配置下,postgresql的timestamp字段默认值current_timestamp不能正确复制到数据库。经检查它是使用db:schema:dump复制下数据库模式,再使用db:schema:load生成测试数据库模式的,这个模块为了各数据库统一,会去掉那些不一致的默认值。解决办法是设置config.active_record.schema_format = :sql。