View-Helper im Controller benutzen
Ich habe die letzten Tage viel Zeit mit einem AJAX-Chat für die Spekunauten verbracht. Dort habe ich mich von .RJS-Templates verabschiedet und erzeuge den meisten View-Code direkt im Controller mit render_to_string.
Für Javascript-Funktionen benötigte ich aber auch oft javascript_escape (bei der Parameterübergabe) und andere Helper, die nur im View zur Verfügung stehen.
Es gibt verschiedene Lösungen, dass zu erreichen. Die unkomplizierteste die ich gefunden habe lautet @template.
Mit @template (ich habe dieses Feature aus einem Kommentar von 2005 gefunden, es scheint also noch aus 1.x-Tagen zu sein) kann man alle Funktionen innerhalb des Views aufrufen, also z.B. @template.escape_javascript!
Tags: controller, view
November 22nd, 2008 at 08:00
Gut zu wissen, danke!
Aber View Code im Controller generieren? Hört sich irgendwie unschön an. Gibt es einen bestimmten Grund warum du das machst? Ich glaube da gäbe es elegantere Lösungen.