首页 > 解决方案 > “错误”:“参数数量错误(给定 1,预期为 0)”

问题描述

当我调试我的代码时,错误出现在这一行: val_emails = get_validate(emails , true)

错误信息:

"error": "wrong number of arguments (given 1, expected 0)"

以下代码在方法的后台运行 -get_emails_list

def send_one(monitor, approve_monitor)
   emails = Mail.get_emails_list(Mail::MailOne)
    puts "=========================================="
    puts "hello"

    val_emails = get_validate(emails , true)
    puts "=========================================="
    puts "world"
    if val_emails != ''
        puts "hello"
    end
end

方法代码get_emails_list

def self.get_emails_list(event_name)
        Mail.get_all_emails_list(event_name)
end

class << self
    def get_all_emails_list(event_name)
            event_emails = Mail.where(:event_name => event_name).select('email')
            emails = ''
            event_emails.each {  |e|
                emails = emails + e.email + ' , '
            }
            return emails
     end
        handle_asynchronously :get_all_emails_list,
                                                    run_at: proc { 0.seconds.from_now },
                                                    :priority => 0, :queue => 'email_list'
end

我正在使用rails 5.2& 宝石delayed_job_active_record

更新当我删除以下行时代码有效:

handle_asynchronously :get_all_emails_list,
    run_at: proc { 0.seconds.from_now },
    :priority => 0, :queue => 'email_list'

标签: ruby-on-railsruby-on-rails-5

解决方案


推荐阅读