Wie man ein boolesches Feld für eine Schienenmigration definiert
Möchte ich hinzufügen, dass ein boolean-Wert-Feld ("is_public") auf die Tabelle "my_model". Derzeit kann ich dieses verwenden:
class AddPublicToDream < ActiveRecord::Migration
def self.up
add_column :my_model, :is_public, :string
end
def self.down
remove_column :my_model, :is_public, :string
end
end
Dann kann ich zuweisen "true" oder "false" mymodel.is_public Controller.
Kann ich ersetzen :string :boolean, um den gleichen Effekt erzielen? Würde es sparen Sie etwas Speicherplatz für Datenbanken im Vergleich zu :string?
InformationsquelleAutor der Frage lkahtz | 2011-02-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, Sie können
:boolean
für dieses, und ja, es wird auch sparen Sie Speicherplatz für Datenbanken.InformationsquelleAutor der Antwort sevenseacat
Ändern Sie die type-Attribut zu
:boolean
und führenrake db:migrate
wieder. Sie sollten in der Lage sein zu nennen, zum Beispiel:InformationsquelleAutor der Antwort Kleber S.