ruby-on-rails - 有没有办法覆盖 Ruby 中的 << 运算符?

标签 ruby-on-rails ruby overriding

我正在尝试做类似的事情:

account.users << User.new

但我需要用户成为帐户上的一种方法。所以我尝试过类似的事情:

def users<<(obj)

但我没有运气。这在 Ruby 中甚至可以做到吗?我会这么认为,因为 ActiveRecord 关系在 Rails 中似乎是这样工作的。

最佳答案

检查这个答案:Rails: Overriding ActiveRecord association method

[此代码完全来自其他答案,供以后搜索者使用]

has_many :tags, :through => :taggings, :order => :name do
    def << (value)
      "overriden" #your code here
    end     
  end

关于ruby-on-rails - 有没有办法覆盖 Ruby 中的 << 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9536839/

相关文章:

c++ - 在 C++ 中,如果一个函数覆盖了一个虚函数,它会自动为虚函数吗?

objective-c - Objective-C - 反射和覆盖方法?

ruby-on-rails - 命名参数的 Ruby 参数错误

ruby-on-rails - 您需要对 Rails 做什么才能使规范文件与它们描述的代码一起存在?

ruby - 如何使用 Setter 使 Ruby 类表现得像散列

javascript - Ruby on Rails 在应用程序 Erb 文件内的 Javascript 中嵌入 Ruby 代码

ruby-on-rails - 如何在不初始化 Rails 的情况下从 schema.rb 创建数据库?

c++ - 我可以使用覆盖非虚拟方法的方法吗?

ruby-on-rails - 如何在 angularjs 中使用原生 anchor 链接

javascript - Rails 7 JavaScript 事件监听器在浏览器返回后停止工作?