Ho un'app per rails 3.1 che memorizza le immagini in un campo binario in un database postgresql (sono a conoscenza di potenziali problemi con l'archiviazione di immagini in un database, ma devo farlo per adesso). Tutto funziona a livello locale in modalità sviluppo e specifiche su OSX, ma tutte le immagini sono rotte nell'app distribuita su Heroku. Ho verificato che i dati nel database siano corretti puntando il mio computer locale nello stesso database utilizzato dall'istanza di heroku e tutte le immagini visualizzate correttamente.ActiveRecord carica erroneamente il campo binario su Heroku, su OSX
Quindi, il problema sembra essere in ActiveRecord (in esecuzione su Heroku) che carica i dati dal database. Immagino anche che sia un problema di codifica. Eseguendo localmente la console di rails posso verificare che i byte di questi campi siano corretti, ma l'esecuzione della console di rails su Heroku mostra un byte errato. Infatti, il caricamento di un file N byte tramite ActiveRecord su Heroku risulta in un byte di 2N + 1 per tutti i file.
Qualsiasi aiuto è molto apprezzato.
Qual è il tipo di colonna? –
: binario in binari, bytea in postgres. –