redmain的mailer.rb的补丁邮件方法

问题描述

我需要在我的插件中更改 redmine 邮件程序的这种行为: class Mailer

expand.grid(a = x$x,b = x$x)

我需要为一个特殊项目从我的插件中更改“From”值,而无需重写 redmine 源。可能吗?

我尝试这样的 redmine 补丁:

 def mail(headers={},&block)
    headers.reverse_merge! 'X-Mailer' => 'Redmine','X-Redmine-Host' => Setting.host_name,'X-Redmine-Site' => Setting.app_title,'X-Auto-Response-Suppress' => 'All','Auto-Submitted' => 'auto-generated','From' => Setting.mail_from,'List-Id' => "<#{Setting.mail_from.to_s.tr('@','.')}>"

但没有成功...

require_dependency 'mailer'

module MyPlugin
  module Patches
    module MailerPatch
      def self.included(base)
        base.send(:prepend,InstanceMethods)
        base.send(:extend,ClassMethods)
      end

...

# Builds a mail for notifying user about an issue info required
        def issue_info_required(user,journal)
          @issue    = journal.journalized
          @journal  = journal
          @author   = journal.user
          @user     = user
          redmine_headers 'Project' => @issue.project.identifier,'Issue-Id' => @issue.id,'Issue-Author' => @issue.author.login,'From' => 'aaa@aaa.aa'
          redmine_headers 'Issue-Assignee' => @issue.assigned_to.login if @issue.assigned_to
          message_id @journal          
          references @issue
          @journal_details = journal.visible_details
          @issue_url = url_for(:controller => 'issues',:action => 'show',:id => @issue,:anchor => "change-#{@journal.id}")

          subject = "Обращение #{@issue.id}. #{@issue.subject}. Запрос дополнительной информации"
          mail :to => user,:subject => subject,:From => 'qqq@qqq.qq'
        end

结果:

headers.reverse_merge! 'X-Mailer' => 'Redmine','.')}>"

    
    #headers['From'] = "xxx@xxx.xx"
    
    headers.keys.each do |k|
      Rails.logger.error "--- after key: #{k} value: #{headers[k]}"
    end

    Rails.logger.error "---From: #{headers['From']}"

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...