Ruby on rails 有没有一种方法可以让模型方法在不显式传递的情况下处理变量?
我知道这听起来是一个荒谬的问题,但我试图解决潜在雇主提出的一个难题。我有一个模式和几个模型及其方法。几乎所有的方法都没有传入变量。这意味着没有一种方法是这样的:Ruby on rails 有没有一种方法可以让模型方法在不显式传递的情况下处理变量?,ruby-on-rails,variables,Ruby On Rails,Variables,我知道这听起来是一个荒谬的问题,但我试图解决潜在雇主提出的一个难题。我有一个模式和几个模型及其方法。几乎所有的方法都没有传入变量。这意味着没有一种方法是这样的: def this_is_my_method(variable) #stuff end def build_address if variable # do something end end ?my_method[begin]=1&my_method[end]=5 或 但有一些方法显然可以处理这样的变量
def this_is_my_method(variable)
#stuff
end
def build_address
if variable
# do something
end
end
?my_method[begin]=1&my_method[end]=5
或
但有一些方法显然可以处理这样的变量:
def this_is_my_method(variable)
#stuff
end
def build_address
if variable
# do something
end
end
?my_method[begin]=1&my_method[end]=5
在某些情况下,模型方法是否只知道某些参数或变量
因此,如果我的控制器接收的参数如下所示:
def this_is_my_method(variable)
#stuff
end
def build_address
if variable
# do something
end
end
?my_method[begin]=1&my_method[end]=5
模型方法“my_方法”是否知道“开始”和“结束”在哪里
请记住,模型方法可以访问该模型实例的所有属性(和其他方法) 所以(例如)这将是一个有效的模型方法
class User < ActiveRecord::Base
def full_name
[first_name, last_name].join(' ')
end
end
尽管坦率地说,我宁愿将值作为方法参数传入。将该变量创建为属性访问器………当您要传递赋值给对象时,否则将得到零…..好的,修改我的答案。。。如果我还没有完全理解你的问题,请告诉我。