[html-formfu] how to write yml for many select option
Carl Franks
fireartist at gmail.com
Wed May 30 10:50:58 GMT 2007
On 29/05/07, chylli <lchangying at gmail.com> wrote:
> HI, I'm a newbie to HTML::FormFu
> Now I want to write a select elemnt whose options are from 1900 to
> 2000, but how to write my yaml file ?
> like following :
>
> - type: multi
> container_attrs:
> class: vertical
> label: birthday
> elements:
> - type: select
> name: year
> values: [year, 1900, 1901, 1902 ..... 2000]
> - type: select
> name: month
> values: [month, 1,2,3,...12]
> - type: select
> name: day
> values: [day, 1,2,3,..31]
>
> I must write the year form 1900 to 2000. that is so urgly. I think
> there must be a clearer way to do that. Can you teach me ?
Hmm, the ideal solution would have been if YAML supported some kind of
range definition, but I can't see anything like that in the spec.
This looks something that would be quite common - so I've added the
functionality to the group element (which select is a sub-class of).
There's a new value_range() method, which works like values(), but
expects an array-ref of at least 2 values.
So, this YAML is equivalent to the following perl code:
---
element:
type: select
name: year
value_range: [1900, 2000]
$form->element({
type => 'select',
name => 'year',
values => [ 1900 .. 2000 ],
});
and with more than 2 values:
---
element:
type: select
name: year
value_range: [year, 1900, 2000]
$form->element({
type => 'select',
name => 'year',
values => [ 'year', 1900 .. 2000 ],
});
You'll have to update from svn to get these changes.
Cheers,
Carl
More information about the HTML-FormFu
mailing list