如何在rails方法中传递参数?

How to pass parameter in rails method?

我有以下方法 returns true or false:

def my_method?
  # do stuff here
end

问题是,我可以用上面的方法传参吗?我怎样才能做到这一点谢谢!

我喜欢这个,但它行不通:

def my_method?(params)
  # do stuff
end

User.my_method?(params)
def my_method?(params)`

将创建一个实例方法,因此必须在 User class 的实例上调用该方法,例如

User.new.my_method?(params) 

(根据其他评论)

如果您希望能够在您的用户 class 本身上调用它,那么您必须将其定义为 class 方法,例如:

def self.my_method?(params)

这里是如何在 ruby 方法中使用参数

def my_method?(params)
  variable1 = params[:temp1] 
  variable2 = params[:temp2] 
end

你可以这样称呼它

User.my_method?({temp1: 'This is my method etc', temp2: 'Another parameter'})