gpt4 book ai didi

ruby-on-rails-3 - 如何向 ActiveRecord::Base 添加方法?

转载 作者:行者123 更新时间:2023-12-03 00:20:12 24 4
gpt4 key购买 nike

我正在尝试创建一个自定义的 ActiveRecord::Base,其中包含有关连接的其他元数据。我认为有两种方法可以解决这个问题:

1.) 继承ActiveRecord::Base并在该子类中添加方法和字段。

2.) 将 ActiveRecord::Base 对象封装在我自己的类中

1 存在各种问题,无法覆盖初始化,奇怪的问题似乎没有我添加的自定义方法,等等。

undefined method `set_profile' for #<Class:0xf041f0>

2 由于使用 ActiveRecord::Base.new 时出现问题,我无法弄清楚

我正在尝试创建一个通用的 ActiveRecord 类,我可以在其上动态建立连接和设置表名称(即没有此 ActiveRecord::Base 代表的基础表),但我似乎找不到一种方法来完成它。有什么想法吗?

这有效:

  class MyTable < ActiveRecord::Base
establish_connection $config['custom-db-config'];
set_table_name 'MY_TABLE'
end

但我需要一个可以重复调用这些东西的类。

最佳答案

不完全确定为什么你会想要这个,但也许你可以尝试这个?

module ActiveRecord
class Base
def self.your_method
# implementation goes here
end
end
end

您需要保存此文件并将其放入 config/intializers 中。

关于ruby-on-rails-3 - 如何向 ActiveRecord::Base 添加方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13264337/

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