gpt4 book ai didi

ruby-on-rails - 验证几个未保存的对象

转载 作者:数据小太阳 更新时间:2023-10-29 08:45:06 25 4
gpt4 key购买 nike

我有表格,可以批量创建一些对象。对于我的流程,我必须一次保存它们,或者根本不保存。问题是 - 当我进行验证时,它们并没有失败,因为每个对象都根据数据库中的当前记录进行验证(我有唯一性验证),但我还需要将当前对象验证为每个未保存的对象。小例子

class User
#field: email
end

在我的表单对象中,我有一组用户。在循环中我做

@users.each do |user|
valid_users << user if user.valid? #and this is where i need to validate `user` within not just DB, but within @users aswell
end

我如何实现这一目标?

最佳答案

您首先需要检查是否所有未保存的对象都通过了验证测试,如果是,那么您可以对唯一字段 email

执行此操作
if @users.map { |user| user.email.downcase }.uniq.length == @users.size
@users.each do |user|
valid_users << user if user.valid?
end
else
# Error: Emails of the users must be unique
end

希望这对您有所帮助!

关于ruby-on-rails - 验证几个未保存的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31021072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com