部署环境:UbuntuServer12.04Postgresql9.1Rails3.2.14Capistrano2.13.5其中:pg_hba.conf文件中描述如下:localallpostrgesqltruselocalallallmd5localall127.0.0.1/32md5localall::1/128md5config/deploy.rb中有一行:run"cd#{latest_release}&{rake}RAILS_ENV=#{rails_env}#{asset_env}assets:precompile"在远程执行capstaging:deploy时,运行到上面那行代码就会报错,提示无法连接数据库,在ActiveRecord初始化时出现错误。当时我注释掉那一行,ssh到服务器上,直接cd到项目中执行预编译,也能成功,不会出现错误。后来我在config/application.rb中加上了:config.assets.initialize_on_precompile=false#Heroku中部署Rails3.2程序也有这个要求最终问题解决。我的问题是:Rails3.2程序在production环境中执行预编译的时候,真的有初始化ActiveRecord这一步么,以及为什么?
慕莱坞森
相关分类