I have a loop that renders a partial
1000.times do |i|
render partial: \'test\', locals: {i: i}
end
this is really slow, up to 0.1 ms for for
This is an interesting proposition and it seems harder than I thought to find information about it. However from what I can tell from the implementation of the response object I would think it should be possible to append (<<
) your output to the stream
object of the response
object. This will be rendered as a string into the response#body
as necessary.
The tricky part is to find a good place to define your my_partial
method. While it is not commonplace to do this in a View
it should still be possible and I think you should have access to the response
object directly. Otherwise you might define it in a helper, though you probably do not want to use this code in a controller.
Sorry if this is rather an idea than an answer, but I lack the time to test it properly.