Я новичок в Rails, и я хотел бы сделать функцию «подписки» в своем приложении.
Мне удалось получить уведомление (по электронной почте) всякий раз, когда кто-то подписывается на мой сайт. Теперь я хочу отправить пользователю уведомление с благодарностью.
Что я имею:
/модели/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 protected]",
:from => "[email protected]"
}
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] из формы и поэтому не могу отправить ответ по электронной почте
- Отправить несколько электронных писем с помощью почтовой формы, но я этого не добился
Моя проблема в том, что у меня нет пользовательской модели, и она мне не нужна, так как в этом приложении не будет места для хранения.