gpt4 book ai didi

ruby-on-rails - 如何在 Rails 中的多个数据模型之间共享类方法?

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

我在 Ruby on Rails 中有多个 Active Record 数据模型需要共享类方法。我可以轻松地在所有类中声明方法,但这违反了 DRY 原则。

我看过声明一个模块并使用“include”混合代码,但这似乎只适用于实例方法,不适用于类方法。

在 Ruby/Rails 中执行此操作的首选方法是什么? (我试图创建一个基本的 ActiveRecord 类并从中继承,但 ActiveRecord 吓坏了)。

最佳答案

ClassMethods 习惯用法是模块提供类和实例方法的常用方法:http://railstips.org/blog/archives/2009/05/15/include-vs-extend-in-ruby/

如果您创建一个抽象基类,ActiveRecord 不应该 panic ,只要您在该类中调用 self.abstract_class = true:http://api.rubyonrails.org/classes/ActiveRecord/Inheritance/ClassMethods.html

关于ruby-on-rails - 如何在 Rails 中的多个数据模型之间共享类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10154754/

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