attr_accessor
est d'ajouter des méthodes get/set sur un objet ruby. Avec un modèle ActiveRecord, ceux-ci sont créés automatiquement en fonction des colonnes de votre schéma.
Normalement, tous les attributs ActiveRecord sont « accessibles », qui signifie que vous pouvez les valeurs de masse Assigner à tous du hachage params: Model.update_attributes(params[:model])
Vous pourriez penser de attr_accessible
qui ne fait que certaines colonnes accessibles de cette façon, et rend le reste "protégé", de sorte qu'ils ne peuvent être affectés directement à travers leur méthode setter.
L'opposé est attr_protected
qui laisse toutes les colonnes accessibles sauf celles que vous spécifiez.
Ainsi, attr_accessor est-il réellement utilisé uniquement pour les variables d'instance qui ne sont pas directement liées à la base de données? – Tian