При использовании Ruport для создания файла CSV для сущностей, содержащих одинаковые сущности, сгенерированные имена столбцов создают конфликты, в результате чего Ruport отображает только первый вхождение этого столбца (столбцов).Чтобы сделать это абстрактное объяснение более понятным и менее сложным, приведем пример:
Мой класс Zone
наследуется от ServerUnitConfig
, который имеет от :belongs_to
до ServerUnit
.Таким образом, Zone
имеет, например, server_unit.su_name
в качестве поля.Zone
также имеет :belongs_to
для Domain
, который также наследуется от ServerUnitConfig
.
Я хочу, чтобы оба были включены в мой Ruport, и для этого у меня есть следующий аргумент :include
дляМой report_table
из Ruport:
{
:server_unit => {:only => 'su_name'},
:domain => {:include => {:server_unit => {:only => 'su_name'}}, :only => {}
}
Сообщение об этом с помощью Ruport в CSV-файле дает отчет, показывающий только столбец server_unit.su_name
из server_unit
, а не столбец Domain
.Обычно также должен отображаться server_unit.su_name
, но поскольку Ruport отображает только имя поля и его родителя, в обоих случаях отображается server_unit.su_name
, и это вызывает конфликты.
Я бы предложил присвоить полю произвольное имяв том числе, но я не знаю как.Другая идея, если это возможно, состоит в том, чтобы сказать Ruport тем или иным способом, что нет проблем иметь одинаковые имена столбцов, но я не думаю, что это возможно.У кого-нибудь есть идея решить эту проблему?Это очень мне поможет!
Спасибо
Даан