Interesuje mnie w jaki sposób metody zdefiniowane w helpersach, albo raczej całe moduły są łączone z całością aplikacji.
Po kilku własnych przykładach widzę, że zmienne instancji definiowane w metodach kontrolera są dostępne w metodach w helpersach, o ile metoda nie jest zadeklarowana jako klasowa. Natomiast metody zdefiniowane w helpersach są dostępne w kontrolerze i odpowiednich widokach.
Czy w takim razie każdy moduł helpersa jest includowany do odpowiedniego kontrolera automatycznie przez aplikację Rails na podstawie nazwy? Przykładowo moduł z pliku application_helpers jest includowany do kontrolera w pliku application_controller?
Sugerowałem się tym, że wywołanie w rails console kodu:
ApplicationController._helpers.instance_methods pokazuje metody zdefiniowane w helpersach, jednak nie można ich wywołać z kontrolera.
Jeżeli jest to po prostu sposób Rails na przekazanie helpersów do instancji widoku, to nie będę się już w to zagłębiał.