我有一个脚本可以创建一个这样的表:
class TableClass < Table
members :hello, :hallo, :halo
end
此脚本创建一个表格,其中的列标有“hello”,“hallo”和“halo”。我想动态声明“成员”部分,以便我可以使用不同脚本生成的结果来初始化此表。我是Ruby的新手,对元编程的概念非常陌生,但我觉得这一定是可行的,我只是不知道如何。
宣布后:
ListOfMembers= [:hello, :hallo, :halo]
我试过了:
members ::ListOfMembers
和
members eval ::ListOfMembers.join(",")
无济于事,我不确定要搜索什么来解决这个问题。我发现的所有元编程示例都围绕着类方法,并且似乎与此问题无关。
删除此类结构可能是执行此操作的最佳方法,但我尝试尽可能使用现有脚本。
答案 0 :(得分:3)
只需将*
添加到数组名称中,方法就会将每个元素作为单独的参数传递。
members *ListOfMembers