Я после этого руководства https://rubyonrailshelp.wordpress.com/2014/01/08/rails-4-simple-form-and-mail-form-to-make-contact-form/Rails - Mail_form как автоматически устанавливается «от» полей current_user электронной почты
В контактной форме, пользователь заполняет поле для их имени и адреса электронной почты вместе с сообщением.
class ContactForm < MailForm::Base
attribute :name, :validate => true
attribute :email, :validate => /\A([\w\.%\+\-]+)@([\w\-]+\.)+([\w]{2,})\z/i
attribute :message
attribute :nickname, :captcha => true
# Declare the e-mail headers. It accepts anything the mail method
# in ActionMailer accepts.
def headers
{
:subject => "My Contact Form",
:to => "[email protected]",
:from => %("#{name}" <#{email}>)
}
end
end
Я хочу, чтобы автоматически отправлять из атрибута user.email
и не пользователь заполнить поле. Это возможно?
Я использую Завещание, но я получаю это сообщение 'неопределенными локальная переменная или метод' current_user»для ContactForm: Class' – user4584963
Да, моя ошибка. Мы не можем использовать метод current_user в модели. Вместо этого в «app/views/contacts/new.html.erb» введите поле электронной почты как скрытое поле и используйте current_user.email, поскольку значение поля скрытой электронной почты должно работать. –