gpt4 book ai didi

ruby-on-rails - 将 ActiveRecord 对象的所有属性(id、created_at、updated_at 除外)设置为 nil 的最简单方法是什么?

转载 作者:行者123 更新时间:2023-12-04 00:59:19 25 4
gpt4 key购买 nike

将 ActiveRecord 对象的所有属性(id、created_at、updated_at 除外)设置为 nil 的最简单方法是什么?

最佳答案

有一个名为 attribute_names 的数组在模型上,它确实包含所有属性,因此使用拒绝来过滤属性:

class Model < AR::Base
def nilify_attributes!(except = nil)
except ||= %w{id created_at updated_at}
attribute_names.reject { |attr| except.include?(attr) }.each { |attr| self[attr] = nil }
end
end

http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-i-attribute_names

关于ruby-on-rails - 将 ActiveRecord 对象的所有属性(id、created_at、updated_at 除外)设置为 nil 的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4613057/

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