RoR 3アプリケーションを設定して電子メールを受信し、その電子メールを処理してproduct_commentsというデータベーステーブルに更新しようとしています。受信メールを処理して、それらをルビーのデータベーステーブルに更新する方法3
私のアプリケーションでは、products_controllerがあります。管理者は商品を承認または不承認とすることができます。管理者が商品を拒否した場合、管理者はコメントを追加し、そのコメントはアーティストに郵送され、アーティストがそのメールに返信すると返信されたコメントと返信日を保存するようにproduct_commentsテーブルを更新する必要があります。ここで
は、私は私の製品コントローラに持っているもの(の一部)である:
if @productcomment.save
ArtistProduct.where(:id=>params[:id]).update_all(:astatus=>'disapproved', :status=>'disapproved')
UserMailer.comment_email(@productcomment).deliver
end
ユーザーがコメントを追加すると、管理者が電子メールを受信します。管理者がコメントを追加すると、ユーザーに電子メールが送信されます。 (これはすでに機能しています)
私はCloudmailinを使用して受信メールを受信しています。私はhttp://myapp.com/incomingを指すようにCloudmailinアドレスを設定しました。
Cloudmailinを自分のアプリケーションに統合する方法がわかりません。私を助けてください。
UPDATE
私は、着信コントローラ作成していると、私の着信コントローラは次のようになります。
require 'mail'
def create
@comment = ProductComment.find_by_token(params[:to].split('@')[0])
ProductComment.update(:id=>@comment.id,{:reply => params[:plain], :rfrom=>params[:from], :replieddate=>params[:date]})
render :text => 'success', :status => 200
end
私の質問は、私がコメントIDを取得する方法ですか?メールを送信している間、コメントIDを指定したいのですか?指定したいidを指定したい場合私はCloudmailinで1つのアカウントを作成しましたが、それは受信メールを処理するのに十分なものですか、または私のアプリケーションにメールを受け取るための他の手順に従う必要がありますか?つまり、サーバーの設定を行うか、何を行うかです。私は何かを得ている。助けてください。
は、今のような電子メールを送信しています:
mail(:to => @user.email, :subject => "Edit Your Product")
を、私はデフォルトとしてから設定していると同じように見えます:
default from: "[email protected]"
これは、管理者のメールアドレスです。 私を助けてください。
その電子メールアドレスが電子メールを受信すると、http://myapp.com/incomingへのPOST要求が行われます。何が問題なの? –
CloudMailinの使い捨て機能を使用できませんか?あなたは受信メールアドレスとして[email protected]を渡すことができますか?コメントIDはparams [:disposable]から来ることができます。ですから、[email protected]はコメントID 123を見つけるでしょうか? –