Wie benenne ich eine Rails-Ruby-Datei, deren Klassenname Zahlen enthält?

7

Kann ein Klassenname der Rails Nummern enthalten? Zum Beispiel:

%Vor%

Ist das eine gültige Klasse? Ich bekomme einen uninitialized constant Test123 Fehler, wenn ich versuche, die Klasse zu laden.

    
Artem Kalinchuk 28.03.2012, 14:26
quelle

4 Antworten

39

Ich denke, Artem Kalinchuks letzter Kommentar verdient es, die Antwort auf diese missverstandene Frage zu sein.

Ein Ruby-Klassenname kann Zahlen enthalten.

Eine Rails -Klasse muss in einer korrekt benannten Datei definiert werden. Wenn ich eine Klasse namens NewYear2012Controller definiere, muss sie in der Datei new_year2012_controller.rb anstelle von "new_year_2012_controller.rb" definiert werden.

Denn so funktioniert der Rails-Reflektor und das automatische Laden.

    
lulalala 04.10.2012, 02:35
quelle
7

Ja, Ruby-Klassennamen können Zahlen enthalten . Wie bei allen Bezeichnern in Ruby jedoch dürfen diese nicht mit Zahlen beginnen .

Referenz :

  

Bezeichner

     

Beispiele:

%Vor%      

Ruby Bezeichner bestehen aus Alphabeten,   Dezimalziffern und der Unterstrich und beginnen mit a   Alphabete (einschließlich Unterstrich). Es gibt keine Einschränkungen für die   Längen von Ruby-Bezeichnern.

    
Ry︁ 28.03.2012 14:29
quelle
1

Versuchen Sie Folgendes:

  • Benennen Sie Ihre Modell- und model.rb-Datei
  • um
  • add table_name magie

wie hier:

%Vor%     
bmalets 28.07.2014 11:34
quelle
0

Ich weiß nichts darüber ...

Siehe die folgenden

%Vor%

und die folgenden Beispiele:

%Vor%

oder

%Vor%

Nur letzteres AbCde.new x wird korrekt instanziiert.

    
rupweb 31.01.2014 17:24
quelle

Tags und Links