【发布时间】:2021-03-11 20:38:41
【问题描述】:
我正在尝试在用户模型上使用与他们注册时相同的验证来验证 4 个字段。我不想用相同的逻辑编写 4 种不同的方法。
我正在验证以下字段 first_name、last_name、user_name 和 nickname。这是我正在检查的内容
def validate_input
if first_name.present? && first_name.start_with?("=", "@", "-", "+")
first_name.prepend('`')
end
end
我怎样才能使用这种方法而不必用相同的方法重复自己 4 次?
【问题讨论】:
-
guides.rubyonrails.org/… 您可以使用简单的方法(参见 6.2 自定义方法)或编写完整的验证器(6.1)。 6.2可能更容易。也就是说:这不是验证,这是修改,所以我不确定这是否是正确的做法。