Salvare le informazioni inviate via email ed elaborate tramite mailgun nella mia app
-
10-12-2019 - |
Domanda
Ho impostato Heroku & Railgun per poter prendere il contenuto dalle e-mail e conservarlo.
L'ho preso al punto che quando le e-mail vengono inviate a mailgun, vengono inoltrate alla mia app e installate instarse vuote del modello dei messaggi vengono create automaticamente, tuttavia, nessuno dei campi dall'e-mail vengono memorizzati (nonostante Avere uno schema abbinato (ad esempio da: argomento stringa: stringa ecc.)).
Il mio problema è che non riesco a capire come prendere il contenuto di una richiesta di post HTTP e elaborarlo in modo che ciascun messaggio sia memorizzato con le sue informazioni corrispondenti. Posso vedere che sta arrivando in Heroku (via logs Heroku), ma non può memorizzarlo. Sto cercando di memorizzare al primo posto i seguenti campi:
- .
- da
- Soggetto
- Allegati
Al momento il mio messaggio_controller.rb sembra questo
.def create @message = Message.new(params[:message]) respond_to do |format| if @message.save format.html { redirect_to @message, notice: 'Message was successfully created.' } format.json { render json: @message, status: :created, location: @message } else format.html { render action: "new" } format.json { render json: @message.errors, status: :unprocessable_entity } end end end
Qualche suggerimento?
Sono sicuro che è un problema di comprensione di base da parte mia, ma non riesco a trovare nulla che spiega davvero quello che sto cercando di fare qui.
Soluzione
the mailgunner qui:
Non pubblichiamo oggetti di binari, pubblichiamo semplici parametri HTTP come spiegato in questa tabella: http://documentation.mailgun.net/user_manual.html#Parseed-Message-Parameters
Non c'è parametro "messaggio" che stai tentando di afferrare con params [: messaggio], è necessario assemblare il tuo messaggio con singoli componenti come PARSA [: soggetto], parametri [: corpo-plain], ecc. .
Inoltre, poiché il post proviene da un dominio diverso, è necessario disabilitare le rotaie richiedono la protezione per falsificazione per questa azione del controller: http://api.rubyonrails.org/classes/actubyontroller/requestforgers.html/requestforgers.com