Konvertieren String in Klassennamen ohne Verwendung von eval in Ruby?

8

Ich habe so etwas:

%Vor%

Ich möchte die Zeichenfolge in ein Klassennamenliteral konvertieren. Ich benutze eval wie folgt, um den String zu konvertieren:

%Vor%

Da ich ein JavaScript-Entwickler bin, versuche ich eval zu vermeiden. Gibt es einen besseren Weg, dies in Ruby zu tun? Oder benutzt eval die bevorzugte Methode, um damit umzugehen?

    
Stratus3D 13.05.2014, 16:55
quelle

2 Antworten

22

Sie können versuchen

%Vor%

Gibt die Klasse Post

zurück     
MxyL 13.05.2014, 16:59
quelle
18

Verwenden Sie Module.const_get

%Vor%

Wenn Sie sich im Rails-Kontext befinden, können Sie auch die '#constantie-Methode für eine Zeichenfolge verwenden

%Vor%     
Brian Samson 13.05.2014 17:02
quelle

Tags und Links