Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为什么我的函数给我错误的参数错误(0代表1)和(1代表0)_Ruby On Rails - Fatal编程技术网

Ruby on rails 为什么我的函数给我错误的参数错误(0代表1)和(1代表0)

Ruby on rails 为什么我的函数给我错误的参数错误(0代表1)和(1代表0),ruby-on-rails,Ruby On Rails,我在randomgenerator.rb文件中创建了函数“generate_verse”,以从另一个模型的数据库(在本例中为Movie)生成记录: 它告诉我我给了函数一个错误的参数数(0代表1)。但是,当我添加参数(1)以查看它会做什么时,它说我再次给函数提供了错误数量的参数(1代表0)。我做错了什么?设计此函数有什么建议吗?您没有向where传递任何参数,因此我怀疑这就是问题所在。您只提供了一个块,它不影响参数计数 如果您可以提供stacktrace,我们将有更好的机会确定问题。我可以提供st

我在randomgenerator.rb文件中创建了函数“generate_verse”,以从另一个模型的数据库(在本例中为Movie)生成记录:


它告诉我我给了函数一个错误的参数数(0代表1)。但是,当我添加参数(1)以查看它会做什么时,它说我再次给函数提供了错误数量的参数(1代表0)。我做错了什么?设计此函数有什么建议吗?

您没有向
where
传递任何参数,因此我怀疑这就是问题所在。您只提供了一个块,它不影响参数计数


如果您可以提供stacktrace,我们将有更好的机会确定问题。

我可以提供stacktrace,但它很长。我应该只提供前半部分吗?对于初学者,您可以停在您编写的任何代码行(与Ruby或Rails代码相反),我用括号替换了花括号,这就解决了这个问题。看起来where函数不是我想要的最好的方法,所以我使用select。感谢您的帮助。请以正确的方式使用
where
,或者尝试使用
挤压
class Randomgenerator < ActiveRecord::Base

  attr_accessor :title, :query

    def generate_verse
      table = Movie.where{self.query.include?(:rating) == true}
      verse = table[0]
      return verse
    end

end
%h2 #{@randomgenerator.title}

%ul#details
  %li
    Verse:
    = @randomgenerator.generate_verse()