attr_accessor
ist eine Kernfunktion von Ruby und wird zum Generieren von Instanzvariablen mit Getter- und Setter-Methoden verwendet. Seine Verwendung wird im Basis-Ruby nie benötigt (es ist eine Bequemlichkeit).
Bei ActiveRecord-Modellen werden Getter und Setter bereits von ActiveRecord für Ihre Datenspalten generiert. attr_accessor
ist nicht erforderlich oder wünschenswert.
Wenn Sie zusätzliche Instanzdaten haben, die Sie nicht beibehalten müssen (d. H. Es handelt sich nicht um eine Datenbankspalte), können Sie attr_accessor
verwenden, um sich ein paar Zeilen Code zu sparen.
Die ähnlich benannte attr_accessible
- die häufig in Rails-Code angezeigt wird und mit attr_accessor
verwechselt wird - ist eine veraltete Methode zum Steuern der Massenzuweisung in ActiveRecord-Modellen. Rails 4 unterstützt es nicht aus der Box; Es wurde durch Strong Parameters ersetzt, was eine genauere Kontrolle ermöglicht.