26 lines
552 B
Ruby
26 lines
552 B
Ruby
# frozen_string_literal: true
|
|
|
|
module UseCase
|
|
module DataExport
|
|
class Questions < UseCase::DataExport::Base
|
|
IGNORED_FIELDS = %i[
|
|
author_identifier
|
|
].freeze
|
|
|
|
def files = {
|
|
"questions.json" => json_file!(
|
|
questions: user.questions.map(&method(:collect_question))
|
|
)
|
|
}
|
|
|
|
def collect_question(question)
|
|
{}.tap do |h|
|
|
(column_names(::Question) - IGNORED_FIELDS).each do |field|
|
|
h[field] = question[field]
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|