Catalyst-Controller-DBIC-API
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/Catalyst/Controller/DBIC/API.pm view on Meta::CPAN
{ cds => ['tracks'] },
],
ordered_by => ['age'],
search_exposes => ['age', 'nickname', { cds => ['title', 'year'] }],
data_root => 'list',
item_root => 'data',
use_json_boolean => 1,
return_object => 1,
);
# Provides the following functional endpoints:
# /api/rpc/artist/create
# /api/rpc/artist/list
# /api/rpc/artist/id/[id]/delete
# /api/rpc/artist/id/[id]/update
=head1 DESCRIPTION
Easily provide common API endpoints based on your L<DBIx::Class> schema classes.
Module provides both RPC and REST interfaces to base functionality.
Uses L<Catalyst::Action::Serialize> and L<Catalyst::Action::Deserialize> to
serialize response and/or deserialise request.
=head1 OVERVIEW
This document describes base functionlity such as list, create, delete, update
and the setting of config attributes. L<Catalyst::Controller::DBIC::API::RPC>
and L<Catalyst::Controller::DBIC::API::REST> describe details of provided
endpoints to those base methods.
You will need to create a controller for each schema class you require API
endpoints for. For example if your schema has Artist and Track, and you want to
provide a RESTful interface to these, you should create
MyApp::Controller::API::REST::Artist and MyApp::Controller::API::REST::Track
which both subclass L<Catalyst::Controller::DBIC::API::REST>.
Similarly if you wanted to provide an RPC style interface then subclass
L<Catalyst::Controller::DBIC::API::RPC>. You then configure these individually
as specified in L</CONFIGURATION>.
Also note that the test suite of this module has an example application used to
run tests against. It maybe helpful to look at that until a better tutorial is
written.
lib/Catalyst/Controller/DBIC/API/RPC.pm view on Meta::CPAN
=head1 VERSION
version 2.009000
=head1 DESCRIPTION
Provides an RPC API interface to the functionality described in
L<Catalyst::Controller::DBIC::API>.
By default provides the following endpoints:
$base/create
$base/list
$base/id/[identifier]
$base/id/[identifier]/delete
$base/id/[identifier]/update
Where $base is the URI described by L</setup>, the chain root of the controller.
=head1 PROTECTED_METHODS
view all matches for this distributionview release on metacpan - search on metacpan
( run in 1.184 second using v1.00-cache-2.02-grep-82fe00e-cpan-4673cadbf75 )