gpt4 book ai didi

ruby-on-rails - Rails 如何查询关联定义

转载 作者:太空宇宙 更新时间:2023-11-03 16:09:14 25 4
gpt4 key购买 nike

我有很多动态代码将复杂的关系保存在一个字符串中。例如:

 "product.country.continent.planet.galaxy.name"

如何检查这些关系是否存在?我想要一个像下面这样的方法:

  raise "n00b" unless Product.has_associations?("product.country.planet.galaxy")

我该如何实现?

最佳答案

试试这个:

def has_associations?(assoc_str)
klass = self.class
assoc_str.split(".").all? do |name|
(klass = klass.reflect_on_association(name.to_sym).try(:klass)).present?
end
end

关于ruby-on-rails - Rails 如何查询关联定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7272478/

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