レイルに乗ってみた〜 目次
書籍『Rails of Ruby on Rails ~Case of LOCUSANDWONDERS.COM~』で勉強してみた(P171〜)
メール送信サーバーの設定を追加する
「構成」って何だっけ。「config」のことか(・∀・)
/work/locus/config/environment.rb
の設定を書き換える。
げっ「require 'gettext/rails'」が出てキタ。以前「gettext」で結構ハマってるからなぁ(||゚Д゚)
たしかRails2.1では/config/environment.rbに「require 'gettext/rails'」は書いちゃ駄目なはず(『レイルに乗ってみた〜Rails of Ruby on Rails その02「GetTextで躓いた(つдT)」 - 牌語備忘録 - pygo』)。
Gmailは面倒そうなのでyahooメールで登録してみた。(っていうかGmailでやったらメール返って来なかった(つдT))
それ以外はだいたい書籍の指示通り。
メーラージェネレータでOrderMailerモデルの作成
G5:~/work/locus username$ script/generate mailer order_mailer order exists app/models/ create app/views/order_mailer exists test/unit/ create test/fixtures/order_mailer create app/models/order_mailer.rb create test/unit/order_mailer_test.rb create app/views/order_mailer/order.erb create test/fixtures/order_mailer/order Loaded suite script/generate Started Finished in 0.000688 seconds. 0 tests, 0 assertions, 0 failures, 0 errors
モデルを修正
/work/locus/app/models/order_mailer.rb
書籍通りだが、@fromを「xxx@yahoo.co.jp」のアドレスにしないと動かなかった。yahooメール設定してるから?(´・ω・`)
コントローラ修正
コード追加
/work/locus/app/controllers/order_controller.rb
(前回コメントアウトしたとこ)
logger.info "EMAIL:" + @order.email OrderMailer.deliver_order(@order)
送信内容のテンプレート作成 ビューを追加
/work/locus/app/views/order_mailer/order.erb
書籍通りなので略。
動作確認
http://localhost:3000/
商品をカートに入れてチェックアウト。そんでフォーム書いて注文してみる。
メールくるはず。
キタ━━━━(゚∀゚)━━━━ッ!!
メモ
- Gmailでの設定失敗(つдT)
- 『restful_authenticationで認証メールをgmailから送信して、エイリアスアドレスで受信する - ザリガニが見ていた...。』さんのとこ参考にやってみたけどメールが送られてこない(´・ω・`)。自分の設定の仕方が悪いみたい(つдT)
- ちかれた(´・ω・`)