How can I conditional the validation on a model validation?

I'm making an application in Ruby, but I create records from text files, which contain basic information to create a record. Then I modify the records from the website, but now validating all fields. What I do is validate some fields when the record is created from the text file, and then validate the other fields which are filled from the website. Here's an example:

# My Table Table name: Person Fields: id, name, address, telephone, mail

The text file only contains the id and name. From the website, add the other fields, but I also want to validate.

So I have the model:

class Person <ActiveRecord:: Base   validates_presence_of: id   validates_presence_of name end

How can I make previous validation from the model?

Is this what you want? validates_presence_of :somethingelse, :on => :update

See the docs for validations at http://api.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html

Colin

If you’re asking “how do I avoid the validation check on name and id when updating”, then you should look at :on => params for validation.

validates_presence_of :id, :name, :on => :create

I think everything is clearly explained in the docs.

http://api.rubyonrails.org/classes/ActiveRecord/Validations/ClassMethods.html