Actionmailer实例变量问题Ruby on Rails

时间:2011-08-14 02:01:03

标签: ruby-on-rails actionmailer

我有一个电子邮件计划程序设置,可以向所有用户发送包含该网站更新的每日电子邮件,

然而,当我尝试发送电子邮件时,所有变量都返回为零,我假设因为没有明确定义。即没有人通过电子邮件提交表格,点击提交并触发电子邮件,这只是每天向所有用户发送的电子邮件,为简单起见,我们会说应该包含接收用户的电子邮件地址。

     <%= @user.email %>

提前感谢您的帮助!

    def newideas_email(user)
    @user = user
    mail(:to => user, :subject => "Here are the latest ideas from your team")
    end

这是调度程序任务:

    scheduler.every("30m") do  
    Account.all.each do |account|
    account.users.each do |user|
    Newideas.newideas_email(user.email).deliver
    end
    end
    end

这是实际的电子邮件代码:

    <% @user.account.ideas.each do |idea| %>  
    <li><%= idea.title %></li> 
    <% end %>

再次感谢!

1 个答案:

答案 0 :(得分:3)

在您的预定代码中,您将用户的电子邮件地址传递给邮件程序Newideas.newideas_email(user.email)。您可能要做的是传递用户对象本身Newideas.newideas_email(user),因为您的视图模板期望它是ActiveRecord