我已经包含了给定的代码
@students = "All #{section.count}#{section.values}"
output: "All 9['A','B','C','D','E','F','G','H','I']"
但我希望节目输出为所有9 [' A'' B'' C',...]
请指导我如何解决这个问题。提前谢谢。
答案 0 :(得分:3)
您可以打印Array的前3个元素,然后操作String以包含省略号。这里:
section.values
# => ["A", "B", "C", "D", "E", "F", "G", "H", "I"]
puts "#{section.values[0..2]}".sub("]",", ...]")
# ["A", "B", "C", ...]
答案 1 :(得分:0)
你可以这样做
@students = "All #{section.count}#{(section.count > 3) ? (section.values[0..2] << '...') : section.values}"
希望有所帮助!
答案 2 :(得分:0)
您也可以使用#take
方法。例如:
a = [1,2,3,4,5]
a.take(2) # will give as result [1,2]
希望它会有所帮助。
答案 3 :(得分:0)
首先获取所有记录并将其存储在@student上。 并使用first()方法
@student.first(count)