ruby-on-rails - 将模块与 attr_accessible、has_one、has_many 混合

标签 ruby-on-rails ruby-on-rails-3 activerecord multiple-inheritance mixins

我可以在 Rails 中做这样的事情吗?

module Authored
  belongs_to :user
  attr_accessible creation_date
end

class Line < ActiveRecord::Base
  include Authored
end

class Document < ActiveRecord::Base
  include Authored
end

class User < ActiveRecord::Base
  has_many :creations, :class_name => 'Authored'
end
或者我是否需要使用简单的继承,即使我的 Authored 类具有不同的类层次结构?

最佳答案

module Authored
  extend ActiveSupport::Concern

  included do
    belongs_to :user
    attr_accessible :creation_date
  end
end

class Line < ActiveRecord::Base
  include Authored
end

class Document < ActiveRecord::Base
  include Authored
end

欲了解更多信息 ActiveSupport::Concern , http://api.rubyonrails.org/classes/ActiveSupport/Concern.html

关于ruby-on-rails - 将模块与 attr_accessible、has_one、has_many 混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12913922/

相关文章:

ruby-on-rails-3 - 如何为backbone.js 定义嵌套资源?

ruby-on-rails - rails : App displays table/model name instead of data from table

ruby-on-rails-4 - Arel:来自 Arel::SelectManager 与连接的事件关系

mysql - 如何使用条件更新数据库表中的值?

ruby-on-rails - 如何证明 Rails 上 Controller 的简单方法?

ruby-on-rails - 如何使用 Ruby 将 JSON 时间字符串自动转换为时间对象?

ruby-on-rails - Ruby on Rails 5.2 - 具有主动存储的背景图像

ruby-on-rails - rails : Can I run backgrounds jobs in a different server?

ssl - jQuery AJAX 请求 (Rails 3) 被重定向并返回空消息体(仅使用 SSL)!

php - 如何将codeigniter事件记录放入if elseif语句中