在我的Mac OS X 10.7.3上为heroku开发rails程序

  |   Source

rails版本为3.1,OS X版本10.7.3,postgresql版本9.1.3j

数据库必须用postgresql

heroku官方主页反对开发版本用sqlite3而生产版本用postgresql.

在OS X 10.7.3上安装postgresql

首先,检查你的OS X版本,从10.7开始OS X自带postgresql

sw_vers -productVersion

如果要安装最新版的postgresql,必须删除老版本的数据库。具体做法参考这篇文章,实际上也就是一行命令:

curl http://nextmarvel.net/blog/downloads/fixBrewLionPostgres.sh | sh

强烈推荐用homebrew安装数据库,

brew install postgresql

具体安装细节请参考postgresql官方wiki.

检测已安装的postgresql

这里是一些数据库基本操作的官方文档. 可以psql -l看一些已有数据库列表.

数据库用postgresql的rails项目

rails new myapp --database=postgresql

如果是从一个已经使用sqlite的项目切换数据库,就必须改config/database.yml,有一些catch,请参考stackoverflow上的讨论.

然后,createdb myapp_development创建postgresql数据库,rake db:migrate建立数据库schema并导入数据在本地数据库.简单测试可证明数据库和web程序可以无缝工作.

最后不要忘记git commit最新代码.

部署web程序到heroku

请参考heroku官方文档,提醒一下不要忘记运行heroku run rake db:migrate,否则数据库是空的.

部署结束后可以运行heroku open打开浏览器访问web程序首页.

如打开网站有问题,可以heroku logs查看日志.

Comments powered by Disqus