2011-10-16 12 views

risposta

22

Il file system dello stack di cedro è non in sola lettura.

Tuttavia, non è necessario memorizzare alcun dato su di esso perché il filesystem è effimero.

Ogni volta che la tua applicazione si riavvia, qualsiasi cosa tu abbia scritto sul filesystem della tua applicazione scompare per sempre.

Ogni volta che si aggiunge un banco di prova, i due dinari hanno ciascuno il proprio sistema effimero; tutti i dati memorizzati da un dyno al suo filesystem effimero non sono disponibili per l'altro banco di prova o per altri dynos aggiuntivi che puoi aggiungere in seguito.

Sqlite3 scrive i dati nel filesystem locale. Non puoi usare Sqlite3 con Heroku.

Heroku fornisce un'installazione PostgreSQL predefinita, gestita da Heroku. Puoi usare quello.

È inoltre possibile utilizzare qualsiasi sistema di database cloud gestito da terze parti, come Amazon RDS o MySQL di Xeround, MongoHQ o MongoDB di MongoLab o Cloudant's CouchDB, tutti disponibili come componenti aggiuntivi di Heroku.

0

io non sono sicuro che quando questa risposta è diventato fuori moda, ma a partire da almeno 21 Nov 2013, sqlite3 può essere utilizzato su Heroku: https://devcenter.heroku.com/articles/sqlite3

E funziona bene se si sta solo facendo una piccola app demo, ad es eseguire 1 banco di prova e non preoccuparsi che il database venga cancellato almeno una volta ogni 24 ore. In caso contrario, l'articolo della guida di heroku suggerisce la migrazione a Postgres.

Assicurarsi che il file .db si trovi nella directory git da qualche parte e non in/tmp/sebbene, come sarebbe se per esempio si stesse seguendo lo Flask tutorial app, flaskr.

Problemi correlati