我的opsworks部署的节点没有[:deploy]对象 这是我的厨师脚本
if node[:deploy] === nil
Chef::Log.info("No deployment..")
node[:deploy].each do |app, deploy|
Chef::Log.info("deploy -#{ app }-")
end
elsif
# never goes here
end
我在第4行出现此错误
undefined method `each' for nil:NilClass (NoMethodError)
答案 0 :(得分:0)
首先,我建议您阅读What does the “===” operator do in Ruby?。
我感觉到您打算使用{% for prediction in object_list %}
<h1>{{ prediction.player_name }}</h1>
{% endfor %}
而不是==
。将您的三重相等运算符更改为双重相等运算符,然后尝试一下...
如果您想使其更具可读性,可以使用#nil?
(取决于您的红宝石版本)。改变
===
到
if node[:deploy] === nil