Rails を初めて使用するので、アプリに「サブスクライブ」機能を追加したいと考えています。
誰かが私のウェブサイトを購読するたびに、なんとか(電子メールで)通知を受け取ることができました. 私が今やりたいことは、ユーザーに感謝の気持ちを伝える通知を送ることです。
私が持っているもの:
/models/contact.rb
class Contact < MailForm::Base
attribute :name
attribute :email, :validate => /\A([\w\.%\+\-]+)@([\w\-]+\.)+([\w]{2,})\z/i
attribute :message
attribute :nickname, :captcha => true
def headers
{
:subject => "New Subscription:",
:to => "email@example.com",
:from => "email@example.com"
}
end
end
/controllers/contacts_controller.rb
class ContactsController < ApplicationController
def create
@contact = Contact.new(params[:contact])
@contact.request = request
if @contact.deliver
redirect_to(:back)
else
#TODO fail notification
redirect_to(:back)
end
end
end
私が試したこと:
- ActionMailer::Base クラスを使用して電子メールを送信しますが、フォームから params[:contact][:email] を取得できないため、応答を電子メールで送信できません
- メールフォームを使用して複数のメールを送信しましたが、達成できませんでした
ここでの問題は、ユーザー モデルがないことです。このアプリにはストレージがないため、ユーザー モデルも必要ありません。