2016-07-30 7 views
1

Rails 4アプリケーションからトランザクション電子メールを送信する方法を理解しようとしています。Rails 4 - Postmarkの統合

私は小包の宝石のチュートリアルを見つけましたが、私はチュートリアル(推奨された手順を実行する場所)と私が知っているものの間のギャップを埋めるために苦労しています。

私は私のgemfileにルビーとレールの宝石の両方がインストールされている:

gem 'postmark-rails', '~> 0.13.0' 
gem 'postmark' 

私は私のconfig/application.rbに消印の設定を追加しました:

config.action_mailer.delivery_method = :postmark 
    config.action_mailer.postmark_settings = { :api_token => ENV['POSTMARKKEY'] } 

私が試してみたいです郵便受けに電子メールテンプレートを作成して使用する。私はこの手順を実行する方法がわからない

Create an instance of Postmark::ApiClient to start sending emails. 

your_api_token = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' 
client = Postmark::ApiClient.new(your_api_token) 

:消印宝石のドキュメントで

命令は私が必要と言うの? 2行目はどこに書きますか?私は自分の設定に自分のapiトークンを保存しています。私は小包のapiクライアントのインスタンスを作る方法を知らない。

誰でも次のステップ(または詳細なチュートリアル)を教えてもらえますか?

答えて

3

宝石をインストールしたら、メーラーを作成する必要があります。私はあなたがすでに正しい方法でAPIキーなどを設定していると推測していますので、実際にテンプレート/静的メールを送信することに集中します。

次の内容のapp/mailers/postmark_mailer.rbファイルを作成できます。

class PostmarkMailer < ActionMailer::Base 
    default :from => "[email protected]>" 
    def invite(current_user) 
    @user = current_user 
    mail(
     :subject => 'Subject', 
     :to  => @user.email, 
     :return => '[email protected]', 
     :track_opens => 'true' 
    ) 
    end 
end 

私たちは、その後、あなたが始めるために次のマークアップを使用してみましょうinvite.html.erb /ファイルアプリ/ビュー/ postmark_mailerでこのメーラーをテンプレートすることができます。

<p>Simple email</p> 
<p>Content goes here</p> 

タグ、HTMLなどを使用して、他の.html.erbテンプレートと同様に書くことができます。

このメールを実際に送信するには、次のようにしてコントローラにアクションを設定する必要があります。あなたがこのメールをしたい場合

PostmarkMailer.invite(current_user) 

また、ホームページを訪れる時に送信されるように、それは最も可能性の高い次のようになります。コンテンツと

アプリ/コントローラ/ home_controller.rb

class HomeController < ApplicationController 

    # GET/
    def index 
    PostmarkMailer.invite(current_user) 
    end 
end 

と対応するルート

config/routes.rb with content

root :to => 'home#index' 

これがあなたの質問に答えることを願っています。

関連する問題