2010-03-04 32 views
5

Tôi muốn hiển thị nhiều phần tử trong bộ điều khiển, những phần này sẽ không là một phần của phản hồi, nhưng được đẩy cho khách hàng qua Juggernaut thay thế.Hiển thị nhiều partials trong bộ điều khiển

Tôi đang sử dụng render_to_string.

Khi cuộc gọi thứ hai được gọi, tôi nhận được DoubleRenderError.

Làm cách nào để hiển thị một phần theo cách mà performed? sẽ không bị ảnh hưởng?

+1

Hóa ra 'render_to_string' xóa khỏi "render kết quả", vì vậy bạn có thể gọi nó nhiều lần. Vấn đề là tôi gọi 'render_to_string' trong một móc' after_filter', sau khi render đã được gọi. – Leventix

Trả lời

4

Hóa ra render_to_string xóa "kết quả hiển thị", vì vậy bạn có thể gọi nó nhiều lần. Vấn đề là tôi gọi render_to_string trong một hook after_filter, sau khi render đã được gọi.

1

hãy đợi để bạn có thể thực hiện điều này trong móc nối sau? gây ra im chạy vào cùng một vấn đề, và phải làm một hook after_filter.

btw, im trong một tình huống tương tự như sử dụng push công nghệ, nhưng với HTML 5 WebSockets, và eventmachine

+0

Thử đặt ngay trước cuộc gọi kết xuất chính trong tác vụ bộ điều khiển, thay vì trong một after_filter. Tôi đã xem xét mã nguồn và lệnh gọi render_to_string điều khiển phản hồi, vì vậy bạn không nên gọi điều này sau khi kết xuất ngay cả khi bạn thao tác biến '@ perform_render'. – Leventix

+0

ya, không thể thực sự làm điều đó. Tôi đang sử dụng InheritedResources để after_filters là kinda theo cách tôi muốn đi. – taelor

Các vấn đề liên quan