I have a table of emails. And i need that Each user received email.
SO i made:
script/generate mailer Notifier
Next.
class Notifier < ActionMailer::Base
def newgrants_notification(respondent)
recipients user.email
from "lala@lala.com"
subject "Hi!"
body (:respondent => respondent)
end
end
In app/views/notifier/newgrants_notification.erb wrote : Hello!
if success = @question.save
respondents = Respondent.find(:all)
respondents.each do |res|
Inquiry.create(:question_id=>@question.id.to_i,
:respondent_id=>res.id.to_i)
Notifier.newgrants_notification(respondents).deliver #this is
right??
end
How have you configured actionmailer? The default is to use sendmail,
but that will only work if you have a functioning sendmail install on
the machine you are running on.
I have a table of emails. And i need that Each user received email.
SO i made:
script/generate mailer Notifier
Next.
class Notifier < ActionMailer::Base
def newgrants_notification(respondent)
recipients user.email
from "lala@lala.com"
subject "Hi!"
body (:respondent => respondent)
end
end
In line 3 of this, you're using the local variable 'user', which
doesn't exist, so it's probably throwing an error. (In fact, if you
got an error, could you share it with us so that we can help better?)
You probably want 'respondent' there instead.
Also, note that your method 'newgrants_notification' takes a *single*
respondent as a parameter...
In app/views/notifier/newgrants_notification.erb wrote : Hello!
if success = @question.save
respondents = Respondent.find(:all)
respondents.each do |res|
Inquiry.create(:question_id=>@question.id.to_i,
:respondent_id=>res.id.to_i)
Notifier.newgrants_notification(respondents).deliver #this is
right??
end
...while in this code, you call 'newgrants_notification' with an
*array* of users ('respondents'). You probably intended to pass a
single respondent (in that block, 'res') to the method.