[英]Node.js on Heroku: PostgreSQL on prod, SQLite3 on dev?
我有一個Node.js / Rails3應用程序,我在Heroku上托管。 當在我的本地機器或遠程生產盒上運行時,rails部分在PostgreSQL和SQLite3之間無縫切換。
在本地,rails框架連接到configite config/databases.yml
定義的SQLite3,當我推送到Heorku時,部署腳本會用生產設置覆蓋它。
我的node.js腳本沒有Heroku可以掛鈎的框架,並確保我在生產環境中使用正確的數據庫。
如何讓我的node.js腳本“正常工作”我的Rails應用程序在開發和生產環境之間無縫移動的方式?
Heroku公開了一個可以通過DATABASE_URL
環境變量連接的數據庫URL。 這是Heroku開發中心文檔的相關部分。
使用Postgres數據庫
要將PostgreSQL數據庫添加到您的應用程序,請運行以下命令:
$ heroku addons:add shared-database
這將設置
DATABASE_URL
環境變量。 將postgres
NPM模塊添加到您的依賴項:"dependencies": { ... "pg": "0.5.4" }
並使用該模塊從代碼中的某個位置連接到
DATABASE_URL
:var pg = require('pg'); pg.connect(process.env.DATABASE_URL, function(err, client) { var query = client.query('SELECT * FROM your_table'); query.on('row', function(row) { console.log(JSON.stringify(row)); }); });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.