如何在RedmineRuby on Rails中使用插件获取所有用户?

问题描述 投票:1回答:2

我正在用Ruby on Rails为Redmine编写一个插件。我需要让所有的 "用户 "将他们链接到一个 "技能 "上。因此,我需要所有用户与我的技能建立关系。由于这是一个插件,我不想在Redmine的主用户模型中写东西。所以,我有点想扩展或什么的原始用户模型.任何人有一个线索,我可以解决这个问题?

ruby-on-rails ruby redmine redmine-plugins
2个回答
1
投票

如果你想给一个已经存在的类添加逻辑(比如添加新的方法、关系、验证等),你可以用Ruby来实现 Module#class_eval:

User.class_eval do
  # Inside this block we add the new logic that we want to add to the User class

  def new_method
  end
end

0
投票

为了在Redmine中给模型打补丁,我曾经使用过这种方法。

# plugins/your_plugin_name/lib/your_plugin_name/user_path.rb
module YourPluginName
  module UserPatch
    extend ActiveSupport::Concern

    included do
      has_many :skills
    end

    def some_new_method 
    end
  end
end

User.include YourPluginName::UserPatch
© www.soinside.com 2019 - 2024. All rights reserved.