Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何跳过几个模型字段的验证_Ruby On Rails_Devise - Fatal编程技术网

Ruby on rails 如何跳过几个模型字段的验证

Ruby on rails 如何跳过几个模型字段的验证,ruby-on-rails,devise,Ruby On Rails,Devise,我有一个模型用户 以下是一些验证字段: validates :first_name, presence:{ message: "please add your First name"} validates :last_name, presence:{ message: "please add your Last name"} validates :username, presence:{ message: "please pick a username"}, 当我尝试使用Desive注册时,我

我有一个模型用户

以下是一些验证字段:

validates :first_name, presence:{ message: "please add your First name"}
validates :last_name, presence:{ message: "please add your Last name"}
validates :username, presence:{ message: "please pick a username"},
当我尝试使用Desive注册时,我收到一条信息,我应该提供名字和姓氏。但对于注册,我只想使用显示的3个字段:用户名、电子邮件、密码

如何在注册过程中跳过名字和姓氏的验证? 谢谢


您不希望在创建新用户时运行
名字
姓氏
的验证,但希望在更新现有用户记录时运行这些验证。您只需修改验证,使其仅在更新用户记录时运行

您可以使用以下
on::update
选项执行此操作:

validates :first_name, presence:{ message: "please add your First name"}, on: :update
validates :last_name, presence:{ message: "please add your Last name"}, on: :update