[chef] Re: Re: Re: Using arrays in templates


Chronological Thread 
  • From: Dreamcat4 < >
  • To:
  • Subject: [chef] Re: Re: Re: Using arrays in templates
  • Date: Sat, 31 Jul 2010 08:03:06 +0100
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=YQkAFQ5M2CTEmMHFX97IQ7o7t1XZ5vzq28GRKd9gBonU8JKAxM9nJxGi1YgwyYSboU Sk9v8M03MMY5ysiqeRtCNqDNuFYhGkr10RGdt/aDH++8cuoc0938aNseRIrnM9NVZ8CD RGbowx4QHPSdOzbKs9p6Ei9LBzQl/P8tS5rJw=

Hi,
Look over here

http://dreamcat4.github.com/plist4r/frames.html?http://dreamcat4.github.com/plist4r/Plist4r/OrderedHash.html

http://github.com/dreamcat4/plist4r/blob/master/lib/plist4r/mixin/ordered_hash.rb


On Sat, Jul 31, 2010 at 3:20 AM, Sig Lange 
< >
 wrote:
> I'm no ruby expert, but It's worth pointing out that ordering of a Hash is
> undefined. So the array-in-array approach works well if you intend to have
> exact order in and out... which you likely do.
>
> Perhaps someone with more ruby knowledge can demonstrate a ordered hash.
>
> ~ Sig
>
> On Thu, Jul 29, 2010 at 3:51 PM, Adam Jacob 
> < >
>  wrote:
>>
>> On Wed, Jul 28, 2010 at 4:50 AM, FX 
>> < >
>>  wrote:
>> > Hi,
>> >
>> > I have a question about templates and the correct syntax.
>> > I have an array which contains the following data:
>> >
>> > "name1","description of name1"
>> > "name2","description of name2"
>> > ...
>> > "nameN","description of nameN"
>> >
>> > This array needs to be stored as an attribute of a role or node (so
>> > that it can be overridden)
>> >
>> > I assume it could look something like this:
>> >
>> > "host":[["name1","description of name1"],["name2","description of
>> > name2"]]
>>
>> This should be a hash, not an array - you have a "name" value, which
>> should be the key, and the descirption is a value.
>>
>> > Now the problem (at least for me) is how do I specify this in the
>> > template?
>> >
>> > I have tried this (I assume it does not work because it needs to have
>> > a object and not array):
>> >
>> > <% @host.each do |h| %>
>> > <%= host[0] %>  <%= host[1]%>
>> > <% end %>
>>
>> This is the right syntax - you need to have <%= h[0] %> and <%= h[1]
>> %>, since that's the variable you create on iteration.
>>
>> Adam
>> --
>> Opscode, Inc.
>> Adam Jacob, CTO
>> T: (206) 508-7449 E: 
>
>
>



Archive powered by MHonArc 2.6.16.

§