7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/active_record_json_streamer/controller.rb', line 7
def stream_json_export(relation, filename:, batch_size: 1000, limit: DEFAULT_LIMIT, cursor_column: :created_at, primary_key: :id, order: :desc, &field_mapper)
response.["Content-Type"] = "application/json"
response.["Content-Disposition"] = %(attachment; filename="#{filename}")
response.["Cache-Control"] = "no-cache"
response.["Last-Modified"] = Time.now.httpdate
streamer = Streamer.new(
relation,
batch_size: batch_size,
limit: limit,
cursor_column: cursor_column,
primary_key: primary_key,
order: order,
&field_mapper
)
self.response_body = streamer.enumerator
end
|