ruby-on-rails - Rails - 变量作为方法名称的一部分

标签 ruby-on-rails ruby variables dynamic methods

<分区>

Possible Duplicate:
Calling a Function From a String With the Function's Name in Ruby

我想做这样的事情:

  def self.greater_than(col_str='events')
    self."#{col_str}"_greater_than(30) # search logic scope method
  end

我怎样才能让它正确调用?我猜语法可能类似于创建动态方法。

最佳答案

您可以尝试使用 send

send("#{col_str}_greater_than".to_sym, 30)

关于ruby-on-rails - Rails - 变量作为方法名称的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7693877/

相关文章:

javascript - 如何在字符串中获得可能重叠的匹配项

java - 如何确定字符串中包含的数据类型?

css - Rails 表单内联

ruby-on-rails - Rails 中的 config.action_mailer.smtp_settings 和 ActionMailer::Base.smtp_settings 有什么区别?

ruby - 未初始化的常量 Mongo::Connection

ruby - 从 github 源安装的 Gem 未在 `gem list` 中显示

php - 使用变量名在 PHP 中处理多维数组

powershell - 计算变量

ruby-on-rails - rails : hide property of inner object in jbuilder and show has_many's property in jbuilder

ruby-on-rails - 从 1 月 1 日到 12 月 31 日,获取一年中星期一列表的最佳方法是什么