
Catalyst::Controller::DBIC::API::StaticArguments - Provides controller level configuration arguments

version 2.004003

StaticArguments is a Role that is composed by the controller to provide configuration parameters such as how where in the request data to find specific elements, and if to use JSON boolean types.

These attributes control requirements and limits to columns when creating or updating objects.
Each provides a number of handles:
"get_${var}_column" => 'get'
"set_${var}_column" => 'set'
"delete_${var}_column" => 'delete'
"insert_${var}_column" => 'insert'
"count_${var}_column" => 'count'
"all_${var}_columns" => 'elements'
prefetch_allows limits what relations may be prefetched when executing searches with joins. This is necessary to avoid denial of service attacks in form of queries which would return a large number of data and unwanted disclosure of data.
Like the synopsis in DBIC::API shows, you can declare a "template" of what is allowed (by using an '*'). Each element passed in, will be converted into a Data::DPath and added to the validator.
prefetch_allows => [ 'cds', { cds => tracks }, { cds => producers } ] # to be explicit
prefetch_allows => [ 'cds', { cds => '*' } ] # wildcard means the same thing
count_arg controls how to reference 'count' in the the request_data
page_arg controls how to reference 'page' in the the request_data
offset_arg controls how to reference 'offset' in the the request_data
select_arg controls how to reference 'select' in the the request_data
as_arg controls how to reference 'as' in the the request_data
search_arg controls how to reference 'search' in the the request_data
grouped_by_arg controls how to reference 'grouped_by' in the the request_data
ordered_by_arg controls how to reference 'ordered_by' in the the request_data
prefetch_arg controls how to reference 'prefetch' in the the request_data
stash_key controls where in stash request_data should be stored
data_root controls how to reference where the data is in the the request_data
item_root controls how to reference where the data for single object requests is in the the request_data
total_entries_arg controls how to reference 'total_entries' in the the request_data
use_json_boolean controls whether JSON boolean types are used in the success parameter of the response or if raw strings are used
return_object controls whether the results of create/update are serialized and returned in the response


This software is copyright (c) 2011 by Luke Saunders, Nicholas Perez, Alexander Hartmaier, et al..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.