小编Kho*_*oga的帖子

Rails4:多个控制器共享的方法

我有两个控制器,即1)carts_controller 2)orders_controller

class CartsController < ApplicationController
  helper_method :method3

  def method1
  end

  def method2
  end

  def method3
    # using method1 and method2
  end
end
Run Code Online (Sandbox Code Playgroud)

注意:method3正在使用method1method2. CartsControllershowcart.html.erb视图使用method3并且工作正常.

现在在顺序视图中,我需要显示cart(showcart.html.erb)但是由于method3定义了帮助程序carts_controller所以它无法访问它.

怎么解决?

ruby ruby-on-rails ruby-on-rails-4

8
推荐指数
1
解决办法
5539
查看次数

ansible:如何检查shell输出

我是Ansible的新手(1.9.2).我想检查当前的zlib版本.如果它不是1.2.8,那么Ansible需要从源代码安装它.

检查当前zlib版本的命令是

root@node2 zlib-1.2.8]# cat /usr/local/include/zlib.h | grep "#define ZLIB_VERSION" | awk '{print $3}'
"1.2.8
Run Code Online (Sandbox Code Playgroud)

我的Ansible代码

 - name: "Check zlib version "
      shell: "cat /usr/local/include/zlib.h | grep \"#define ZLIB_VERSION\" | awk '{print $3}'"
      register: zlib_version
    - name: "Debug result"
      debug: result
    - name: "Build zlib "
      command: "{{ item }} chdir=/home/zlib-1.2.8"
      with_items:
        - "./configure --prefix=/usr/local --shared"
        - make
        - make install
      when: "zlib_version!=1.2.8"
Run Code Online (Sandbox Code Playgroud)

调试打印"你好世界"!!!

TASK: [Debug result] ********************************************************** 
ok: [192.168.111.81] => {
    "msg": "Hello world!"
}
Run Code Online (Sandbox Code Playgroud)

如何检查shell输出并相应地运行命令.

我改变了debug: var=zlib_version.stdout …

ansible

3
推荐指数
1
解决办法
7294
查看次数

标签 统计

ansible ×1

ruby ×1

ruby-on-rails ×1

ruby-on-rails-4 ×1