Bonsoir
voici mon problème: je veux permettre de créer un compte utilisateur avec un système d'activation du compte.
Je veux donc valider que dans mon modèle la valeur soit true ou false
voici donc mon modèle
1 ) du coup quand j'utilise la console pour faire mes tests
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class User < ActiveRecord::Base #Autres validations pour d'autres champs validates :account_active,:presence => true,:numericality => true, :inclusion => {:in => 0..1} end
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 rails c require 'user.rb'Le problème est que lorsque je veux voir si les données sont valides avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 us=User.new(:name => "test",:first_name => "test",:password => "0000",:email => "mail@test",:account_active => 1)
j'ai l'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2us.valid?
2) De plus lorsque dans mon modèle je veux specifier que c'est integer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 TypeError: can't convert nil into String from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/validations/inclusion.rb:12:in `include?' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/validations/inclusion.rb:12:in `validate_each' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/validator.rb:154:in `block in validate' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/validator.rb:151:in `each' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/validator.rb:151:in `validate' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.3/lib/active_support/callbacks.rb:314:in `_callback_before_245' from /usr/local/ruby/lib/ruby/gems/1.9.1/gems/activesupport-3.0.3/lib/active_support/callbacks.rb:494:in `_run_validate_callbacks'
j'ai une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class User < ActiveRecord::Base #Autres validations pour d'autres champs validates :account_active,:presence => true,:numericality => true, :inclusion => {:in => 0..1},:only_integer => true endEt enfin j'ai une 3 question :-)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2rails ArgumentError: Unknown validator: 'only_integer'
Est-ce que lorsque à partir de la console j'execute un require, plusieurs fois , ruby charge à niveau la classe ou bien il vérifie d'abord si le fichier a changer ?
Est-ce que quelqu'un a une idée svp ?
Merci d'avance
Partager