Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Helper sind im Grunde genommen Klassen, die in Views oder im Layout verwendet werden, um Code zu kapseln, der in mehr als einer Ansicht verwendet werden soll. Die Verwendung eines bestimmten Helpers wird im Controller definiert und steht dann automatisch in allen Views und Layouts zur Verfügung, die über diesen Controller gesteuert werden.
Die Idee hinter dem Helper-Konzept ist folgende: Es werden Methoden für die Präsentationsschicht definiert, die sich – dynamisch abhängig von verschiedenen Werten oder Zuständen – auf eine bestimmte Weise verhalten. Diese Logik soll aber weder direkt im View implementiert werden (Trennung von Logik und Präsentation) noch umständlich über den Controller in das Template gelangen. Darüber hinaus soll der Code, der für die dynamische Darstellung notwendig ist, an verschiedenen Stellen wiederverwendet werden und muss deshalb ausgelagert werden.