我是Rails和Heroku的新手。 我部分不了解数据库系统(测试,生产,开发)。
我创建了两个Rails应用程序。首先使用Rails的默认sqlite db,然后使用Heroku支持的postgres db。我创建了简单数据并将应用程序推送到Heroku,但Heroku绝对忽略了我的数据库数据。
我不明白的是什么?或者你能告诉我如何更轻松地部署Rails应用程序吗?我住在捷克共和国,那里的Rails不是那么普遍,所以几乎没有人可以建议我。
修改
FIRST APP'DB CONFIG
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: sqlite3
database: db/production.sqlite3
pool: 5
timeout: 5000
第二个应用程序'DB CONFIG
development:
adapter: postgresql
encoding: unicode
database: poet2_development
pool: 5
username: poet2
password: psql
test:
adapter: postgresql
encoding: unicode
database: poet2_test
pool: 5
username: poet2
password: psql
production:
adapter: postgresql
encoding: unicode
database: poet2_production
pool: 5
username: poet2
password: psql
答案 0 :(得分:0)
问题是Heroku使用的是您在计算机本地测试应用程序时所使用的数据库。因此,当您将应用程序推送到Heroku时,您在本地使用它时在应用程序数据库中创建的所有数据都不会传递下来。
将初始数据添加到Heroku数据库的解决方案是使用种子设定:http://edgeguides.rubyonrails.org/migrations.html#migrations-and-seed-data。阅读文档并观看此Railcast http://railscasts.com/episodes/179-seed-data,它可以解释您的一切
祝你好运。