在我的Mac OS X 10.7.3上为heroku开发rails程序
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
查看日志.