Rails-如何使用变量作为方法名称的一部分

萨维塔·马拉汉

我正在尝试将变量名称添加到rails的method_name中。我收到错误消息。

**控制器动作** 
===================== 
def my_action(state)
   method _#{state} 
end 

**模型方法** 
====== ============== 
def method_start
结束

def method_end
结束

如何用变量名调用方法我没有得到。

寿一

用于Object.send按名称调用方法。例如,

def my_action(state)
  if [:start, :end].include?(state)
    model.send("method_#{state}")
  end
end

确保验证state变量的安全性。 Object.send可以调用任何方法,包括私有方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何(使用 RSpec)测试在 Rails 中发送的 HTTP 请求(作为单元测试的一部分)?

将Hitimes Gem作为Rails捆绑包的一部分安装时出错

从URL请求Rails模型的一部分

如何使用变量内容作为其他变量名称的一部分?

如何在Rails控制台中查找和删除字符串的一部分-ActiveRecord

在Rails上提交表单红宝石时如何更新表单字段的一部分

使用变量作为语句的一部分

将参数作为Rails中url的一部分发送

Rails 4-从application.html的一部分中排除页面

Rails:Flash对象是否是会话对象的一部分

忽略Rails 3中路径的一部分

React TypeScript:如何使用变量名作为键的一部分

如何使用系统环境变量作为@PropertySource值的一部分?

如何使用函数参数作为变量的一部分?

有没有一种方法可以仅在Rails中重置数据库的一部分?

在 Rails 6 中,如何使用路由参数作为控制器方法名称?

作为结构调用的一部分,如何在一行中编写变量名称?

尝试在生产中运行 rails 控制台时如何修复“spring 不是捆绑包的一部分”

我可以破解 Rails 服务器中 HTML 页面的一部分吗

使用字符串输出作为数据框变量名称的一部分

Rails如何在数据库的字符串的第一部分和第二部分中搜索?

如何使用列名称作为 csv 文件路径的一部分创建 Dataframe?

如何通过一个环境变量作为命令的一部分

在Rails方法名称中使用@符号

使用for循环的实例号作为函数调用名称的一部分

android使用兰特号作为活动名称的一部分

是否可以使用 xpath 将 $ 作为属性名称的一部分

如何在 Concourse CI 中使用 yaml 模板变量作为值的一部分

如何扩展波浪符号〜作为变量的一部分?