Sooey

2010-10-18 22:44:02 +0900

続・Heroku上でのRails3ブログアプリ。

昨日、このブログをデプロイしたときに作成した管理用ユーザーのパスワードを1Passwordに保存しておかなかったせいで、今日ポストしようとした時にログインできないという有様に(昨日はまだsooey-journal.heroku.comでしかアクセスできなかったんで、1Passwordに余計なエントリを残すのが嫌だった)。

UserモデルはDeviseを使って以下のようになっているのですが、

class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :token_authenticatable, :confirmable, :lockable and :timeoutable
  devise :database_authenticatable, #:registerable,
         :recoverable, :rememberable, :trackable, :validatable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :email, :password, :password_confirmation, :remember_me
end

サインアップ(:registerable)は無効にしたけど、:recoverableは有効にしてあったのでパスワードの再設定をして復活。

ちなみに、HerokuではSMTPでのメール送信までは面倒を見てくれない。選択肢は、

  • SendGridをアドオン経由で使う
  • 自前でメールサーバーを用意する
  • Gmailを送信用に使う

のいずれかになる。

今回は手っ取り早いのが一番ということで、Sendgrid SMTP add-onを見ながらSendGridアドオンを入れて…さあ設定するべ、と思ったら設定は何もいらなかった。

Adding this add-on will instantly setup your Rails app to send emails using ActionMailer.

とのことで、

$ heroku addons:add sendgrid:free

とやってアドオンを入れるだけでActionMailerがよきにはからってくれた。素晴らしい!!