2014-05-02 18 views

risposta

0

io non sono sicuro che questa informazione sarà utile per chiunque, ma solo nel caso in cui:

Questa domanda comporta un'affermazione eroneous. Il componente aggiuntivo ClearDB non imposta una variabile ENV CLEARDB_DATABASE_URL. Il componente aggiuntivo ClearDB crea una variabile di configurazione CLEARDB_DATABASE_URL var. Quando l'app è avviata, viene creata una variabile ENV dalla variabile var. Queste due variabili sono diverse e potrebbero anche avere valori diversi se hai modificato la variabile ENV nel tuo codice base.

Ovviamente, all'interno del tuo codice base, puoi fare tutto ciò che vuoi con le variabili ENV.

Per quanto riguarda la configurazione delle vars può fare riferimento ad altre variabili di configurazione o ad altre variabili ENV o viceversa - Non lo so. Ma sicuramente questo sarebbe qualcosa di abbastanza hacky, e contrariamente all'uso previsto, una corretta pratica di codifica e un comportamento socialmente responsabile.

+0

Correggetemi se sbaglio, ma che suona come una distinzione senza una differenza; il tuo codice deve ancora fare riferimento a 'ENV [CLEARDB_DATABASE_URL]'. Se si desidera utilizzare il proprio nome (ad esempio, DB_URL) per impedire il blocco del fornitore, l'approccio alla variabile di ambiente lo rende molto difficile. Lo sto fraintendendo? –

+0

Non vedo la difficoltà. È possibile creare un inizializzatore con il seguente: '' 'ENV ['DATABASE_URL'] = ENV ['CLEARDB_DATABASE_URL']' ''. Ora puoi fare riferimento a '' 'ENV ['DATABASE_URL']' '' nella tua app. L'OP, tuttavia, ha chiesto come fare l'equivalente "attraverso Heroku". Sembravano esserci alcune idee sbagliate che oscuravano i problemi che cercavo di disambiguare. – laertiades

+1

Giusto, ma ciò significa che stai includendo essenzialmente i dettagli dell'ambiente nel tuo codice (il particolare plug-in DB) che potrebbe non essere applicabile se, ad esempio, dovessi distribuirlo in un posto diverso da Heroku. Non è la fine del mondo, ovviamente, ma lega il tuo codice a Heroku. –

2

Non è possibile creare un alias di una variabile di configurazione o fare riferimento a una di un'altra. Ho fatto una domanda simile e questo è quello che hanno detto:

Ho paura che le variabili di configurazione non possono riferirsi a vicenda in questo modo , in quanto sono semplici una raccolta di nomi e valori, senza interpolazione o calcolo disponibili per i valori.

Come si potrebbe provare un file profile ...

Problemi correlati