Обзор
Я пишу Ruby-программу, которая использует данные из запросов MySQL для создания URL-адресов диаграмм. Недавно появилось новое требование, в котором нам, возможно, понадобится создать графики с сгруппированными столбцами в будущем. Таким образом, вместо одного набора данных, я мог бы иметь любое количество наборов. Прямо сейчас конструктор для моего объекта BarChart принимает только один массив данных, и я ищу Ruby-подобные способы разрешения более одного массива данных.
Текущий конструктор
#constructor
#title The title of the graph
#data The data that will go in the bar chart
#labels The labels that match the data
#x_axis_label The label for the x axis
#y_axis_label The label for the y axis
def initialize(title, data, labels, x_axis_label, y_axis_label)
@title, @data1, @labels, @x_axis_label, @y_axis_label =
title, data, labels, x_axis_label, y_axis_label
super(@title, @@type, @@size)
@url = to_url()
end
Моя попытка
Моей первоначальной мыслью было использование var args.
#constructor
#title The title of the graph
#data The data that will go in the bar chart
#labels The labels that match the data
#x_axis_label The label for the x axis
#y_axis_label The label for the y axis
def initialize(title, *data, labels, x_axis_label, y_axis_label)
.....
end
Это приличная идея? или есть лучший способ сделать это?
Спасибо