Ruby on rails Rails:参数数目错误(1代表0)

Ruby on rails Rails:参数数目错误(1代表0),ruby-on-rails,ruby,ruby-on-rails-4,activerecord,Ruby On Rails,Ruby,Ruby On Rails 4,Activerecord,在我的rails应用程序中,我在作业模型中使用了这个方法,它从作业显示页面返回公司的作业 def same_company Job.approved.where(company: self.company).where.not(job: self.job) end 但这不起作用,给我这个错误 参数数目错误(1代表0) 为什么我会犯这个错误?我该如何解决这个问题 更新 这是我在日志文件中发现的错误 Rendered jobs/show.html.erb within layout

在我的rails应用程序中,我在作业模型中使用了这个方法,它从作业显示页面返回公司的作业

  def same_company
    Job.approved.where(company: self.company).where.not(job: self.job)
  end
但这不起作用,给我这个错误

参数数目错误(1代表0)

为什么我会犯这个错误?我该如何解决这个问题

更新

这是我在日志文件中发现的错误

Rendered jobs/show.html.erb within layouts/application (352.9ms)
Completed 500 Internal Server Error in 1155ms

ActionView::Template::Error (wrong number of arguments (1 for 0)):
    154:       <div class="cl3_comp">
    155:         <div class="_3clmn_dictry">
    156:           <ul class="uList _3clmn _4direct">
    157:             <% @job.same_company(6).each do |same_company_job| %>
    158:               <li class="_lidiretry">
    159:                 <div class="clearfix _5qo4">
    160:                     <%= link_to job_path(same_company_job), class: "_5q6s _8o _8t lfloat _ohe" do %>
  app/models/job.rb:65:in `same_company'
  app/views/jobs/show.html.erb:157:in `_app_views_jobs_show_html_erb__849384532_94102470'
  app/controllers/jobs_controller.rb:59:in `show'
  app/controllers/application_controller.rb:61:in `user_time_zone'
是的,修复程序是:

<% @job.same_company[0...6].each do |same_company_job| %>


根据方法定义
same_company
,它不接受任何参数,但您正在发送
same_company(6)
。我想您需要的是第一行
6行
,所以上面的代码就是您需要的。

显示完整的错误堆栈请确定哪个方法调用引发了异常?(如果将调用链拆分为多个语句,这可能更容易确定)这是一个错误,即我获取了错误数量的参数(1代表0),因为错误意味着将参数传递给不应接收任何参数的方法。如果没有完整的堆栈跟踪,我们无法真正帮助您。我在哪里可以找到完整的堆栈跟踪我是一个新手,我刚刚复制了屏幕上的错误否w我得到了这个错误未定义的方法“job”,用于35;显示您的
作业
模型和
作业的输出。列名
。问题将是这部分
不是(job:self.job)
self
是当前的job,因此没有
self.job
…您可以使用
not(job:self)
not(id:id)
您可以在更新输出job.column\u name中看到我的job模型。它们总是返回准确的输出没有一个工作过这个(id:id)引发此错误针对nil:NilClass和this not(job:self)的未定义方法“each”引发此错误PG::UnfinedColumn:error:列jobs.job不存在
<% @job.same_company[0...6].each do |same_company_job| %>