Justin Hunter > Reaction-0.002005 > Reaction::UI::Controller::Role::Action::Create

Download:
Reaction-0.002005.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  1
Stalled  1
View/Report Bugs
Source  

NAME ^

Reaction::UI::Controller::Role::Action::Create - Create action

DESCRIPTION ^

Provides a create action, which sets up an Action Viewport by calling action_for on either the object located in the collection slot of the stash or on the object returned by the method get_collection.

SYNOPSYS ^

    package MyApp::Controller::Foo;

    use base 'Reaction::Controller';
    use Reaction::Class;

    with(
      'Reaction::UI::Controller::Role::GetCollection',
      'Reaction::UI::Controller::Role::Action::Simple',
      'Reaction::UI::Controller::Role::Action::Create'
    );

    __PACKAGE__->config( action => {
      create => { Chained => 'base' },
    } );

    sub base :Chained('/base') :CaptureArgs(0) {
      ...
    }

    sub on_create_apply_callback{ #optional callback
      my($self, $c, $vp, $result) = @_;
      ...
    }

    sub on_create_close_callback{ #optional callback
      my($self, $c, $vp) = @_;
      ...
    }

ROLES CONSUMED ^

This role also consumes the following roles:

Reaction::UI::Controller::Role::Action::Simple

REQUIRED METHODS ^

The following methods must be provided by the consuming class:

get_collection
make_context_closure

ACTIONS ^

create

Chain endpoint with no args, sets up the viewport with the appropriate action. If the methods on_create_apply_callback and on_create_close_callback are present in the consuming class, they will be used as callbacks in the viewport.

METHODS ^

_build_action_viewport_map

Extends to set the create key in the map to Reaction::UI::ViewPort::Action

SEE ALSO ^

Reaction::UI::Controller
Reaction::UI::Controller::Role::GetCollection
Reaction::UI::Controller::Role::Action::Simple
Reaction::UI::Controller::Role::Action::List
Reaction::UI::Controller::Role::Action::View
Reaction::UI::Controller::Role::Action::Object
Reaction::UI::Controller::Role::Action::Update
Reaction::UI::Controller::Role::Action::Delete
Reaction::UI::Controller::Role::Action::DeleteAll

AUTHORS ^

See Reaction::Class for authors.

LICENSE ^

See Reaction::Class for the license.

syntax highlighting: