Data-MuForm

 view release on metacpan or  search on metacpan

lib/Data/MuForm.pm  view on Meta::CPAN

    elsif ( !$self->submitted ) {
        # no initial object. empty form must be initialized
        $self->fill_from_fields;
    }
}

sub in_setup { }
sub after_setup { }
sub after_build_fields { }

sub update_model {
    my $self = shift;
}


sub munge_params {
    my ( $self, $params, $attr ) = @_;

    my $_fix_params = Data::MuForm::Params->new;
    my $new_params = $_fix_params->expand_hash($params);
    if ( $self->field_prefix ) {

lib/Data/MuForm/Model.pm  view on Meta::CPAN


has 'model_class' => (
#   isa => 'Str',
    is  => 'rw',
);

sub use_model_for_defaults {1}

sub validate_model { }

sub update_model { }

sub lookup_options { }

1;

__END__

=pod

=encoding UTF-8

lib/Data/MuForm/Model/Object.pm  view on Meta::CPAN

package Data::MuForm::Model::Object;
# ABSTRACT: stub for Object model

use Moo::Role;

sub update_model {
    my $self = shift;

    my $model = $self->model;
    return unless $model;
    foreach my $field ( $self->sorted_fields ) {
        my $name = $field->name;
        next unless $model->can($name);
        $model->$name( $field->value );
    }
}

t/memory_cycles.t  view on Meta::CPAN

    has_field 'entries.foo' => (
        type     => 'Text',
        required => 1,
    );
    has_field 'entries.bar' => (
        type     => 'Text',
        required => 1,
    );
    has_field 'some_select' => ( type => 'Select', inactive => 1 );

    sub update_model {
        my $self = shift;
        my $value = $self->field('some_select')->value;
    }
}

my $form = new_ok( 'My::RepeatableForm' );

my $params = {
    reqname => 'Testrequest',
    'entries.1.foo' => 'test1',

t/repeatable/reload.t  view on Meta::CPAN

    use Data::MuForm::Meta;
    extends 'Data::MuForm';

    has_field 'foo';
    has_field 'bar';
    has_field 'my_rep' => ( type => 'Repeatable' );
    has_field 'my_rep.rep_id' => ( type => 'PrimaryKey' );
    has_field 'my_rep.one';
    has_field 'my_rep.two';

    sub update_model {
        my $self = shift;
        my $value = $self->value;
        my $index = 1;
        foreach my $rep ( @{ $value->{my_rep} } ) {
            $rep->{rep_id} = $index;
            $index++;
        }
        $self->model( $value );
    }
}

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 0.578 second using v1.00-cache-2.02-grep-82fe00e-cpan-4673cadbf75 )