Ho migrato con successo un forum a Disourcse con uno script personalizzato in precedenza, ma ora, quando lo eseguo di nuovo, ricevo il seguente errore di importazione:
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-7.0.3.1/lib/active_record/connection_adapters/postgresql_adapter.rb:81:in `rescue in new_client': Non siamo riusciti a trovare il tuo database: discourse. Che si trova nel file di configurazione del database situato in config/database.yml. (ActiveRecord::NoDatabaseError)
Per risolvere questo problema:
- Hai creato il database per questa app o l'hai eliminato? Potrebbe essere necessario creare il tuo database.
- Il nome del database è cambiato? Controlla che il tuo file database.yml abbia il nome del database corretto.
Per creare il tuo database, esegui:
bin/rails db:create
L’importazione seguente nel mio script fallisce:
./launcher enter app
cd /var/www/discourse
bundle exec ruby script/import_scripts/avatar.rb
Non capisco davvero l’errore: posso accedere al database tramite sudo -u postgres psql discourse, validando che il database “discourse” esista. Inoltre, il sito web funziona correttamente. Quando apro rails c posso anche accedere ai dati.
Puoi darmi qualche suggerimento su cosa c’è di sbagliato?
Discourse non riesce a trovare il suo database. Quindi devi risolvere questo problema. Si è trattato di un’installazione standard o di un’installazione di sviluppo? Dai un’occhiata alla guida appropriata e fai funzionare discourse come primo passo.
Ho riavviato e non ha risolto il problema. Ora riscontro lo stesso problema anche sulla mia macchina locale (docker locale)… il che mi fa pensare che in qualche modo io stia eseguendo il comando in modo errato…
E grazie – apprezzo la rapidità delle tue risposte e il supporto!
Hmm. Forse qualcosa è cambiato, dato che sono sicuro di non aver eseguito script di importazione da quando ho iniziato a usare Discourse. Buon lavoro!