Ruby on rails 4 Rails::MailersController#预览中的ArgumentError。参数数量错误(1对2)
我的邮件控制器从不接受第二个参数。一旦我传入另一个参数,我就会得到下图所示的错误 错误Ruby on rails 4 Rails::MailersController#预览中的ArgumentError。参数数量错误(1对2),ruby-on-rails-4,Ruby On Rails 4,我的邮件控制器从不接受第二个参数。一旦我传入另一个参数,我就会得到下图所示的错误 错误 JobNotifier.delay(run_at: 5.minutes.from_now).send_post_email(@job, @unsubscribe) 作业通知程序.rb # Preview all emails at http://localhost:3000/rails/mailers/job_notifier class JobNotifierPreview < ActionMai
JobNotifier.delay(run_at: 5.minutes.from_now).send_post_email(@job, @unsubscribe)
作业通知程序.rb
# Preview all emails at http://localhost:3000/rails/mailers/job_notifier
class JobNotifierPreview < ActionMailer::Preview
def send_post_email
user = User.all
JobNotifier.send_post_email(user)
end
end
注意:如果它只有一个作业
参数,则它可以工作
class JobNotifier < ApplicationMailer
def send_post_email(job, unsubscribe)
@user = User.where(:email => true).all
emails = @user.collect(&:email).join("#{';'}")
@jobs = job
@job = job
@unsubscribe = unsubscribe
mail(:to => emails, :bcc => User.pluck(:email).uniq, :subject => 'New job posted on FarFlungJobs')
end
end
test/mailer/preview/sjob\u notifier\u preview.rb
# Preview all emails at http://localhost:3000/rails/mailers/job_notifier
class JobNotifierPreview < ActionMailer::Preview
def send_post_email
user = User.all
JobNotifier.send_post_email(user)
end
end
#在http://localhost:3000/rails/mailers/job_notifier
类JobNotifierPreview
可能存在什么问题?如何解决
在作业通知程序预览中
JobNotifier.send_post_email(user)
只发送一个参数。您确定发送的参数正确吗?您需要在作业通知程序预览中传递两个参数。
JobNotifier.send_post_email(user)
只发送一个参数。您确定发送的参数正确吗?您需要向其传递两个参数。错误消息说明这是针对mailers_控制器中的preview方法的,并且您已经显示了另一个控制器和方法的代码。@margo您能详细说明一下吗?实际上我不知道我遗漏了什么以及在哪里修复它。你能展示一下触发send_post_email方法的代码吗?@margo查看更新。这就是我所能想到的。错误消息表明它是针对mailers_控制器中的preview方法的,并且您已经显示了另一个控制器和方法的代码。@margo您能详细解释一下吗?实际上我不知道我遗漏了什么以及在哪里修复它。你能展示一下触发send_post_email方法的代码吗?@margo查看更新。这就是我能想到的。