小编jmc*_*vin的帖子

如何部分检测是否由邮件程序呈现?

我有一部分是在几个不同的视图和邮件模板之间共享的.如果可能,此部分应尝试使用用户的会话来存储一些状态信息.

确定会话是否存在似乎有点问题.在部分内部,调用定义的?(会话)似乎总是在邮件呈现期间产生真(这是一个错误吗?),但尝试以任何方式访问"会话"会产生"未定义的方法"异常.

截至目前,我正在让我的邮件程序使用@for_mailer实例变量来表示此部分以不同的方式呈现,但这似乎并不优雅.部分是否有一些简单的方法可以判断它是否由邮件程序呈现,而不是在Web请求的上下文中呈现?

ruby-on-rails actionmailer ruby-on-rails-3

6
推荐指数
1
解决办法
1013
查看次数

使用Fabric CA在生产网络上启用TLS

我很想知道在使用该cryptogen工具时生成网络组件之间安全通信所需的最佳方法.

使用Fabric CA注册/注册身份将为您提供网络事务所需的密钥对,但这些密钥对是否可以用于保护网络通信,或者我应该使用openssl单独配置这些密钥对?

hyperledger-fabric

4
推荐指数
1
解决办法
660
查看次数

在ruby中编写一个DSL方法,它将创建一个带参数的方法

我正在尝试为后台工作者类写一个DSL,我有点卡住尝试完成某些事情.

理想情况下,我应该能够像以下一样写一个工作者......

job :job_name do |param1, param2|
  puts param1
end
Run Code Online (Sandbox Code Playgroud)

现在,在我的工人超类课程中,我正在做这样的事......

class Worker
  def self.job(job_name, &block)
    define_method job_name do
      # stuck
    end
    # do some additional stuff here
  end
end
Run Code Online (Sandbox Code Playgroud)

想要做的是定义一个方法,该方法可以访问原始作业调用中使用的块参数,因此我可以通过以下方式解除此作业:

Worker.new.job_name(param1, param2)
Run Code Online (Sandbox Code Playgroud)

创建的方法应该在功能上等同于:

def job_name(param1, param2)
  puts param1
end
Run Code Online (Sandbox Code Playgroud)

这有任何意义吗?希望有人能指出我正确的方向.

ruby dsl metaprogramming jruby

2
推荐指数
1
解决办法
431
查看次数