tim*_*one 2 ruby ruby-on-rails
我有一些项目可以是红色,黄色,绿色(比这更复杂)的几个属性之一,它们有相应的is_red,is_yellow,is_green布尔值.
我希望有一个api函数来改变我传递的值,例如:
id: 12
type: red
Run Code Online (Sandbox Code Playgroud)
在我的功能中有:
item=Item.find(id)
if item.is_ + type == true
item.is_ + type=false
end
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
thx提前
使用 send
item = Item.find(id)
if item.send(:"is_#{type}") == true
item.send(:"is_#{type}=", false)
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
822 次 |
| 最近记录: |