Iteração de recursos em modelos de bonecos

2

Então eu tenho um manifesto de fantoches, com vários recursos

class foo {
  Custom::Resource {'resource1':
      attr1 => 'val1',
      attr2 => 'val2',
  }
  Custom::Resource {'resource2':
      attr1 => 'val3',
      attr2 => 'val4',
  }
  Custom::Resource {'resource3':
      attr1 => 'val5',
      attr2 => 'val6',
  }
}

Se eu quisesse fazer um loop sobre os nomes dos recursos Custom :: Resource em um template .erb que são definidos na classe foo, como eu os acesso? Então, se eu quisesse escrever um modelo que fosse assim:

ThisLine = resource1
ThisLine = resource2
ThisLine = resource3
    
por Dave Wongillies 21.03.2012 / 11:29

1 resposta

2

Caso você ainda queira saber, descobri como iterar recursos dentro de modelos de fantoches sem módulos adicionais. Aqui está um exemplo onde eu tenho um módulo de firewall com um tipo de regra definida (firewall :: rule). Eu quero iterar todas as instâncias desse tipo em um modelo, então eu uso:

<% scope.compiler.catalog.vertices.each do |resource| -%>
 <% if resource.type == "Firewall::Rule" -%> 
  # <%= resource[:comment] %>
 <% end -%> 
<% end -%>

Essa linha intermediária "resource [: comment]" não funciona direito, ainda estou tentando descobrir essa parte. Eu perguntei sobre isso na lista de discussão dos bonecos, então vamos ver se eles voltam para mim. Para referência, consulte esta postagem .

    
por 06.09.2012 / 19:35