65 votes

valeurs par défaut attr_accessor

J'utilise des rails et je veux faire en sorte que attr_accessor :politics soit défini, par défaut, sur false.

Est-ce que quelqu'un sait comment faire cela et est capable de me l'expliquer en termes simples?

139voto

Orlando Points 3184

Rails a attr_accessor_with_default donc vous pouvez écrire

 class Like
  attr_accessor_with_default :politics,false
end

i = Like.new
i.politics #=> false

et c'est tout

METTRE À JOUR

attr_accessor_with_default a été déprécié dans Rails 3.2.. vous pouvez le faire à la place avec du Ruby pur

 class Like
  attr_writer :politics

  def politics
    @politics || false
  end
end

i = Like.new
i.politics #=> false

-1voto

mikhailov Points 4981

s'il s'agit d'une instance ActiveRecord, la colonne booléenne est un bon chemin. dans d'autres cas, vous pouvez configurer des accesseurs dans la méthode initialize ()

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X