Unix and Linux Discussions Tagged with colum |
|
Thread / Thread Starter |
Last Post |
Replies |
Views |
Forum |
|
|
|
4 |
4,212 |
UNIX for Beginners Questions & Answers |
|
|
|
5 |
3,603 |
UNIX for Beginners Questions & Answers |
|
|
|
0 |
2,996 |
UNIX for Beginners Questions & Answers |
|
|
|
1 |
12,485 |
Shell Programming and Scripting |
|
|
|
4 |
7,227 |
UNIX for Beginners Questions & Answers |
|
|
|
1 |
2,975 |
UNIX for Beginners Questions & Answers |
|
|
|
3 |
3,432 |
UNIX for Beginners Questions & Answers |
|
|
|
9 |
5,256 |
UNIX for Beginners Questions & Answers |
|
|
|
2 |
14,328 |
Programming |
|
|
|
3 |
3,017 |
UNIX for Beginners Questions & Answers |
|
|
|
2 |
4,288 |
UNIX for Beginners Questions & Answers |
|
|
|
4 |
2,182 |
UNIX for Beginners Questions & Answers |
|
|
|
6 |
3,734 |
UNIX for Beginners Questions & Answers |
|
|
|
2 |
5,897 |
Shell Programming and Scripting |
|
|
|
3 |
5,598 |
Shell Programming and Scripting |
|
|
|
6 |
14,001 |
UNIX for Advanced & Expert Users |
|
|
|
7 |
5,555 |
Shell Programming and Scripting |
|
|
|
5 |
2,020 |
UNIX for Beginners Questions & Answers |
|
|
|
2 |
870 |
UNIX for Beginners Questions & Answers |
|
|
|
3 |
3,107 |
UNIX for Advanced & Expert Users |
|
|
|
2 |
4,882 |
Shell Programming and Scripting |
|
|
|
5 |
1,323 |
Shell Programming and Scripting |
|
|
|
6 |
1,502 |
Shell Programming and Scripting |
|
|
|
4 |
2,137 |
Programming |
|
|
|
12 |
4,475 |
Shell Programming and Scripting |
|
|
|
7 |
3,484 |
Shell Programming and Scripting |
|
|
|
5 |
4,080 |
Shell Programming and Scripting |
|
|
|
2 |
2,930 |
UNIX for Dummies Questions & Answers |
|
|
|
7 |
5,603 |
Shell Programming and Scripting |
|
|
|
2 |
2,085 |
UNIX for Advanced & Expert Users |
|
|
|
3 |
3,727 |
Shell Programming and Scripting |
|
|
|
4 |
8,099 |
Shell Programming and Scripting |
|
|
|
2 |
2,240 |
Shell Programming and Scripting |
|
|
|
9 |
7,441 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
2,070 |
UNIX for Advanced & Expert Users |
|
|
|
8 |
5,252 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
2,218 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
4,168 |
Shell Programming and Scripting |
|
|
|
5 |
10,327 |
Shell Programming and Scripting |
|
|
|
5 |
2,321 |
Shell Programming and Scripting |
DBIx::Class::HTMLWidget(3pm) User Contributed Perl Documentation DBIx::Class::HTMLWidget(3pm)
NAME
DBIx::Class::HTMLWidget - Like FromForm but with DBIx::Class and HTML::Widget
SYNOPSIS
You'll need a working DBIx::Class setup and some knowledge of HTML::Widget and Catalyst. If you have no idea what I'm talking about, check
the (sparse) docs of those modules.
package My::Model::DBIC::Pet;
use base 'DBIx::Class';
__PACKAGE__->load_components(qw/HTMLWidget Core/);
package My::Controller::Pet; # Catalyst-style
# define the widget in a sub (DRY)
sub widget_pet {
my ($self,$c)=@_;
my $w=$c->widget('pet')->method('get');
$w->element('Textfield','name')->label('Name');
$w->element('Textfield','age')->label('Age');
...
return $w;
}
# this renders an edit form with values filled in from the DB
sub edit : Local {
my ($self,$c,$id)=@_;
# get the object
my $item=$c->model('DBIC::Pet')->find($id);
$c->stash->{item}=$item;
# get the widget
my $w=$self->widget_pet($c);
$w->action($c->uri_for('do_edit/'.$id));
# fill widget with data from DB
$item->fill_widget($w);
}
sub do_edit : Local {
my ($self,$c,$id)=@_;
# get the object from DB
my $item=$c->model('DBIC::Pet')->find($id);
$c->stash->{item}=$item;
# get the widget
my $w=$self->widget_pet($c);
$w->action($c->uri_for('do_edit/'.$id));
# process the form parameters
my $result = $w->process($c->req);
$c->stash->{'result'}=$result;
# if there are no errors save the form values to the object
unless ($result->has_errors) {
$item->populate_from_widget($result);
$c->res->redirect('/users/pet/'.$id);
}
}
DESCRIPTION
Something like Class::DBI::FromForm / Class::DBI::FromCGI but using HTML::Widget for form creation and validation and DBIx::Class as a ORM.
Methods
fill_widget
$dbic_object->fill_widget($widget);
Fill the values of a widgets elements with the values of the DBIC object.
populate_from_widget
my $obj=$schema->resultset('pet)->new->populate_from_widget($result);
my $item->populate_from_widget($result);
Create or update a DBIx::Class row from a HTML::Widget::Result object
CAEVATS
/ POSSIBLE PROBLEMS
PostgreSQL
ERROR: null value in column "private" violates not-null constraint
This is a result of we trying to set a value to undef that should not be. This is typicaly a problem when you have a colum such ass
"private boolean not null". We have a special-case for this, and if you set data_type => boolean, is_nullable => 0 in your ResultSource
definition, we update the value to 0 before attempting to insert or update
AUTHORS
Thomas Klausner, <domm@cpan.org>, http://domm.zsi.at
Marcus Ramberg, <mramberg@cpan.org>
Andreas Marienborg, <omega@palle.net>
CONTRIBUTORS
Simon Elliott, <cpan@browsing.co.uk>
Ashley Berlin
Guillermo Sansovic
LICENSE
This code is Copyright (c) 2003-2006 Thomas Klausner. All rights reserved.
You may use and distribute this module according to the same terms that Perl is distributed under.
perl v5.10.0 2008-02-06 DBIx::Class::HTMLWidget(3pm)