Ruby on rails Rails-如何将字符串作为查询发送?

Ruby on rails Rails-如何将字符串作为查询发送?,ruby-on-rails,Ruby On Rails,我有一个带有编号列的表(例如Group1、Group2、group3)。我想编写一个循环,每次在不同的组上分组时查询表(例如,Group1上的第一个迭代组,Group2上的第二个迭代组等等)。我知道send方法,但我在将其适应Rails查询方法(如.where和.group)时遇到了问题 我正在寻找以下线索: group = "Group1" Table.send("group(:#{group})") 这可能吗?我只是语法有误吗?严格地回答您的问题,#

我有一个带有编号列的表(例如Group1、Group2、group3)。我想编写一个循环,每次在不同的组上分组时查询表(例如,Group1上的第一个迭代组,Group2上的第二个迭代组等等)。我知道send方法,但我在将其适应Rails查询方法(如.where和.group)时遇到了问题

我正在寻找以下线索:

group = "Group1"
Table.send("group(:#{group})")

这可能吗?我只是语法有误吗?

严格地回答您的问题,
#send
使用表示方法名称的符号,后跟任何参数。所以你想要的是:

Table.send(:group,'Group1')
话虽如此,求助于
#send
似乎没有必要。你能不能不这样做:

groups=%i[group1 group2 group3]
组。每个组都有| g|
表.其中(…).组(g)#或其他
结束