2012-11-06 15 views
6

IRuby on Rails: Wie plurale und einzelne Form von Namen überprüfen

rails g model Anonymous section_id:integer aid:string fake:bool active:bool 

aber Tabellenname in der Migration ein Modell Anonymous mit Befehl erstellt haben, wird anonym genannt

class CreateAnonymous < ActiveRecord::Migration 
    def change 
    create_table :anonymous do |t| 
     t.integer :section_id 
     t.string :aid 
     t.bool :fake 
     t.bool :active 

     t.timestamps 
    end 
    end 
end 

Bin ich richtig diese pluralisierte Form von Anonymous ist auch Anomymous? (Englisch ist nicht meine Muttersprache). Wie kann ich sehen, welche pluralisierten Namen Rails meinen Modellen gibt? So etwas wie rake routes?

+0

Die anderen Antworten sprechen darüber, wie die Rails pluralize Zeug funktioniert, so dass Sie sehen können, wie der Tabellenname ist. Ich füge hinzu, dass "anonym" auf Englisch ein Adjektiv ist, kein Substantiv, und daher normalerweise keine Pluralform hat. Vielleicht meinst du etwas wie AnonymousUser oder AnonymousComment? – dpassage

Antwort

17

Sie können dies in der Rails-Konsole tun.

$ "anonymous".pluralize 
=> "anonymous" 

oder ein anderes Beispiel, bei dem das Pluralwort anders ist.

$ "cookie".pluralize 
=> "cookies" 
1
pluralize(count, singular, plural = nil) public 

Versuche, die singuläre Wort pluralize es sei denn, Zählung ist 1. Wenn mehrere zugeführt wird, wird es, dass zu verwenden, wenn Zahl> 1 ist, sonst wird es der Beugung verwenden die Pluralform

um zu bestimmen,

Beispiele:

pluralize(1, 'person') 
# => 1 person 

pluralize(2, 'person') 
# => 2 people 

pluralize(0, 'person') 
# => 0 people 

für Sie

"anonymous".pluralize 
0

Ich würde nur Ihr Modell umbenennen. Sparen Sie sich den Schmerz und das zukünftige Debuggen und vermeiden Sie diese potenziellen Kopfschmerzen. Sie könnten "Anonymouse" mit mehreren "Anonymous" verwenden. Oder denken Sie sich einen schlaueren Namen aus.