Wie verwende ich Ruby-Verfeinerungen in Rails-Ansichten?

8

Ich habe ein Rails 4-Projekt mit Ruby 2.0. Ich habe einige Verfeinerungen definiert. Putting

%Vor%

am Anfang der Ansichtsdateien verursacht den Fehler "undefined Methode" mit '".

Wenn ich hinzufügen:

%Vor%

An der Spitze meines Controllers (oberhalb der Klassendeklaration) kann ich die Verfeinerung im Controller erfolgreich verwenden, aber ich erhalte einen 'undefined method' Fehler, wenn ich versuche, ihn in der Ansicht zu verwenden.

Danke!

    
Brad Urani 17.03.2014, 19:27
quelle

2 Antworten

1

Leider scheint dies nicht möglich zu sein. Für die Nachwelt dokumentiere ich die Dinge, die ich versucht habe, die nicht funktionierten:

In der Ansicht:

%Vor%

In der Steuerung (jeweils separat getestet):

%Vor%

Im Helfer:

%Vor%

Beachten Sie, dass Verfeinerungen im Controller und im Helper verfügbar sind, aber nie in der Ansicht.

Schade.

    
dankohn 05.05.2016 22:04
quelle
0

Mit 'using' können Sie Klassenverfeinerungen aus dem Modul in die aktuelle Klassen- oder Moduldefinition importieren. Sie können es nicht in die View-Datei einfügen, indem Sie 'using' verwenden. Wenn Sie es in der Ansicht verwenden möchten, können Sie Folgendes in Ihrem Controller tun (ich habe es nicht getestet):

mit MyRefinements

helper: MyRefinements ODER helper_method: MyRefinements

    
Ashutosh Tiwari 05.12.2014 17:26
quelle