2010-08-23 3 views
43

Ich fragte mich, warum jemand helper_method in einem Controller verwenden sollte, um eine Hilfsmethode zu erstellen, anstatt den "normalen" Weg zu erstellen, der sich in der Hilfsdatei befindet. Was für die Vor- und Nachteile?Controller helper_method

Antwort

81

helper_method ist nützlich, wenn die Funktionalität zwischen dem Controller und der Ansicht verwendet wird. Ein gutes Beispiel ist etwas wie current_user.

Wenn die Methode mehr mit der Steuerungslogik und nicht mit der Formatierung arbeitet, gehört sie in den Controller. So etwas wie current_user würde zwischen allen Controllern geteilt werden, so dass es in der definiert werden sollte.

Wahre "Helfer" -Methoden befassen sich mit der Ansicht und behandeln Dinge wie Formatierung und Vorlagenlogik. Diese werden im Controller selten benötigt und gehören in ein eigenes Modul unter app/helpers. Sie können diese bei Bedarf in Ihren Controller einbinden, aber Sie erhalten schließlich die gesamte Palette an View-Hilfsmethoden, die Ihrem Controller zur Verfügung stehen.

Verwandte Themen