gpt4 book ai didi

ruby - 从另一个符号数组填充一个新数组

转载 作者:太空宇宙 更新时间:2023-11-03 18:30:12 25 4
gpt4 key购买 nike

我有一个关于 Ruby 数组的问题,但它有点难以描述,所以我无法通过阅读其他问题找到太多信息。这里是。

目前我有以下有效的代码(Prawn 表的一部分)

片段A:

  students = all_students.map do |student|          
[
student[:first_name],
student[:last_name],
student[:email],
student[:given_name]
]
end
pdf.table students

这工作正常,但现在我想省略一些列(例如,不显示 last_name)。假设我得到一个列名数组,比方说 pickedColumns:

片段 B:

  pickedColumns = []
pickedColumns << :first_name << :email << :given_name #NOTE: no (:last_name) there!

students = all_students.map do |student|
studentCols = pickedColumns.each do |studentCol|
student[studentCol]
end
end
p.table students

我无法实现代码段 A 的效果,使用代码段 B 中的替换代码。我在代码段 B 中得到的只是一个字符串“first_name”的“student[:first_name]”的实际值"对于每一行。

如果我的描述不是 100% 清楚,请告诉我。

谢谢你的帮助!

问候

最佳答案

students = all_students.map do |student|
studentCols = pickedColumns.each do |studentCol|
student[studentCol]
end
end

做那个

students = all_students.map do |student|
pickedColumns.map do |studentCol|
student[studentCol]
end
end

它会起作用。

PS:要遵守 ruby​​ 的命名约定,您应该更改变量名称以使用所有小写字母和下划线,而不是驼峰命名法。

关于ruby - 从另一个符号数组填充一个新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5213555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com