[html-formfu] defaults_from_model not filling a nested
Checkboxgroup
Jonas Alves
jonas.alves at gmail.com
Sun Dec 16 14:58:00 GMT 2007
On Dec 15, 2007 5:22 PM, Carl Franks <fireartist at gmail.com> wrote:
> On 15/12/2007, Jonas Alves <jonas.alves at gmail.com> wrote:
> > Hi Guys,
> > I have a form with an element like this:
> >
> > - type: Block
> > tag: ~
> > nested_name: area_rel
> > elements:
> > - type: Checkboxgroup
> > name: area_id
> > options: [ ... ]
> > constraints: [ AutoSet ]
> >
> > area_rel is a many_to_many relationship defined in my model.
> >
> >
> > And defaults_from_model fails to fill it. Am I doing something wrong, or
> > this is not supported yet?
>
> Hi Jonas,
>
>
> http://search.cpan.org/~cfranks/HTML-FormFu-0.02002/lib/HTML/FormFu/Model=
/DBIC.pm#many_to_many_selection<http://search.cpan.org/%7Ecfranks/HTML-Form=
Fu-0.02002/lib/HTML/FormFu/Model/DBIC.pm#many_to_many_selection>
>
> You don't need the Block for that:
>
> type: Checkboxgroup
> name: area_rel
>
> If area_id is the PK, it'll pick that up automatically, otherwise you
> can be explicit:
>
> db: { default_column: area_id }
>
> And this isn't documented yet because it may change, but with the
> catalyst controller you can populate the Checkboxgroup from the db
> like so:
>
> type: Checkboxgroup
> name: area_rel
> db:
> model: MyModel
> label_col: area
>
> See the source of Element/_Group::process() for more details.
>
> Cheers,
> Carl
>
Hi Carl,
I can't make it work. The Checkboxgroup is not being populated.
Element/_Group::process is not being called at all.
This is what I have in the config file:
- type: Checkboxgroup
name: area_rel
db:
model: DBIC::Area
label_col: name
constraints: [ AutoSet ]
The rels in DBIC::Campanha model:
__PACKAGE__->has_many(
area_rel =3D> 'SMS::Schema::Result::AreaCampanha', 'campanha_id',
);
__PACKAGE__->many_to_many(areas =3D> 'area_rel', 'area_id',);
# in my app:
$form->defaults_from_model( $campanha_row );
If I change the rel in the config to "name: areas" instead of "name:
area_rel" I got this error:
[error] DBIx::Class::Relationship::ManyToMany::__ANON__(): search_related:
result source 'AreaCampanha' has no such relationship area_id at
/Library/Perl/5.8.6/HTML/FormFu/Model/DBIC.pm line 186
Do you have any idea what am I doing wrong?
Thanks
-- =
Jonas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/html-formfu/attachments/20071216/4a=
44266d/attachment.htm
More information about the HTML-FormFu
mailing list