Redmine の [ニュースの追加] ページにカスタム フィルター フィールドを追加して、新しいニュースを追加するときに、メールを送信するユーザーのグループを選択できるようにしたいと考えています。
フィールド自体は Redmine ユーザー グループのリストであり、すべてのユーザーが少なくとも 1 つのグループに割り当てられます。
誰もこれをやったことがありますか?任意の提案をいただければ幸いです
この問題に関連する 3 つのファイルを見つけました。
- /app/controller/news_controller.rb
- /app/models/news.rb
- /app/views/news/_form.html.erb
環境: Redmine バージョン 2.2.1.stable.11156 Ruby バージョン 1.8.7 (x86_64-linux) Rails バージョン 3.2.11 環境制作 データベース アダプタ MySQL Redmine プラグイン: プラグインがインストールされていません
これまでのところ、すべての登録ユーザーに追加のニュースを送信する Redmine で 1 つの変更のみを行いました。ファイル: /app/modelsmailer.rb
概要:
編集:あなたのアドバイスに従って、メーラー機能をコントローラーに移動しました:
def create
@news = News.new(:project => @project, :author => User.current)
@news.safe_attributes = params[:news]
@news.save_attachments(params[:attachments])
if @news.save
#news_added(@news)
if params[:group]
mail :to => GroupsUser.find(params[:group][:ids]).joins(:users).select("users.mail").compact,
:subject => "[#{@news.project.name}] #{l(:label_news)}: #{@news.title}"
else
render :new
end
end
end
しかし、エラーが発生します: NameError (uninitialized constant NewsController::GroupsUser): pointing to line
mail :to => GroupsUser.find