Hi Catalystas --

We're trying a new project, this time using FormHandler, and there's
something we obviously don't have right.

In the controller we define the OrgForm class (which we borrowed from the
truly awesome InstantCRUD.pl output),

{
    package *MyApp::Controller::Org::OrgForm*;
    use HTML::FormHandler::Moose;
    extends 'HTML::FormHandler::Model::DBIC';
    with 'HTML::FormHandler::Render::Table';

    has '+item_class' => ( default => 'Org' );
...
}

Then we refer to it thus:

sub org :Local :Args(0) {
    my ( $self, $c ) = @_;

    my %params = %{ $c->req->params };
    my $org = $c->model('MyApp::Org')->find_or_new( {id => $params{id} || 1}
); # default to org #1 for now
    my $form = *MyApp::Controller::Org::OrgForm*->new(
        item   => $org,
        params => \%params,
    );
    $c->stash->{form} = $form;

}

WIth *[% form.render %]* in the template, we see this message in the
browser:

undef error - Unable to do maketext on: at
/usr/local/share/perl/5.10.0/HTML/FormHandler/I18N.pm line 15.

When single-stepping via the Perl debugger, *
$form->field('name')->result->value* returns the proper name of org#1 just
as expected, so pulling a database record and stuffing it into the form is
working just fine. But it won't render the HTML. (We also tried converting
NULL values in the database fields to empty strings, no difference.)

What did we miss?

=====

Catalyst v5.8.0029
HTML::FormHandler v0.32001
Moose v1.2

Here's the initial debug-listing output form the command line:


Use of uninitialized value $message[0] in concatenation (.) or string at
/usr/local/share/perl/5.10.0/HTML/FormHandler/I18N.pm line 15. at
/usr/local/share/perl/5.10.0/HTML/FormHandler/I18N.pm line 15

 
HTML::FormHandler::I18N::__ANON__[/usr/local/share/perl/5.10.0/HTML/FormHandler/I18N.pm:16]('No
handle/phrase at /usr/share/perl/5.10/Locale/Maketext.pm l...') called at /u
sr/local/share/perl/5.10.0/Try/Tiny.pm line 100
        Try::Tiny::try('CODE(0xcc64058)', 'Try::Tiny::Catch=REF(0xcc63f78)')
called at /usr/local/share/perl/5.10.0/HTML/FormHandler/I18N.pm line 16

 
HTML::FormHandler::I18N::maketext('HTML::FormHandler::I18N::en_us=HASH(0xcc6fb38)',
undef) called at
/usr/local/share/perl/5.10.0/HTML/FormHandler/TraitFor/I18N.pm line 57

 
HTML::FormHandler::TraitFor::I18N::_localize('MooseX::Traits::__ANON__::SERIAL::12=HASH(0xcb69690)',
undef) called at /usr/local/share/perl/5.10.0/HTML/FormHandler/Render/S
imple.pm line 393

 
HTML::FormHandler::Render::Simple::render_submit('MyApp::Controller::Org::OrgForm=HASH(0xc733818)',
'MooseX::Traits::__ANON__::SERIAL::12=HASH(0xcb69690)') called at /usr/l
ocal/share/perl/5.10.0/HTML/FormHandler/Render/Simple.pm line 185

 
HTML::FormHandler::Render::Simple::render_field('MyApp::Controller::Org::OrgForm=HASH(0xc733818)',
'MooseX::Traits::__ANON__::SERIAL::12=HASH(0xcb69690)') called at /usr/lo
cal/share/perl/5.10.0/HTML/FormHandler/Render/Table.pm line 31

 
HTML::FormHandler::Render::Table::render('MyApp::Controller::Org::OrgForm=HASH(0xc733818)')
called at /home/will/projects/perl-mvc/MyApp/root/src/admin/org.tt2 line 6
[etc]

-- 
Failure is not important. How you overcome it, is.
-- Nick Vujicic
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/

Reply via email to