我是一个红宝石新bie。我正在尝试使用rack
创建一个简单的API,它接受一个json数据并将其写入postgres heroku数据库表。
我在postgres heroku上创建了一个数据库,但是没有找到任何在那里创建表的选项。
任何人都可以提供一些指向一些好教程的指针,这些教程解释了如何实现这一目标。
答案 0 :(得分:5)
如果您有开发或基本计划,您将无法直接连接到数据库并手动创建表,因此您需要编写一个将为您创建表的迁移脚本。
使用像ActiveRecord这样的ORM通常是一个好主意,它可以很容易地自动化所有SQL grunt工作。使用sinatra-activerecord(https://github.com/janko-m/sinatra-activerecord
)gem来获取机架应用程序上的rake帮助程序任务。只需确保使用ENV[DATABASE_URL]
指向您的Heroku数据库,而不是使用本地sqlite3。
然后运行本地命令rake db:create_migration NAME=json_data
来创建迁移文件,然后在创建它之后,运行Heroku命令heroku run bundle exec rake db:migrate
以创建所需的所有表和模式。