我想在 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