NAME¶
Jifty::Action::Record -- An action tied to a record in the database.
DESCRIPTION¶
Represents a web-based action that is a create, update, or delete of a
Jifty::Record object. This automatically populates the arguments method of
Jifty::Action so that you don't need to bother.
To actually use this class, you probably want to inherit from one of
Jifty::Action::Record::Create, Jifty::Action::Record::Update, or
Jifty::Action::Record::Delete. You may need to override the
"record_class" method, if Jifty cannot determine the record class of
this action.
METHODS¶
record¶
Access to the underlying Jifty::Record object for this action is through the
"record" accessor.
record_class¶
This method can either be overridden to return a string specifying the name of
the record class, or the name of the class can be passed to the constructor.
report_detailed_messages¶
If the action returns true for "report_detailed_message", report the
message returned by the model classes as the resulting message. For Update
actions, Put the per-field message in "detailed_messages" field of
action result content. The default is false.
new PARAMHASH¶
Construct a new "Jifty::Action::Record" (as mentioned in
Jifty::Action, this should only be called by
"framework->new_action". The "record" value, if
provided in the PARAMHASH, will be used to load the "record";
otherwise, the primary keys will be loaded from the action's argument values,
and the "record" loaded from those primary keys.
arguments¶
Overrides the "arguments" in Jifty::Action method, to automatically
provide a form field for every writable attribute of the underlying
"record".
This also creates built-in validation and autocompletion methods
(validate_$fieldname and autocomplete_$fieldname) for action fields that are
defined "validate" or "autocomplete". These methods can be
overridden in any Action which inherits from this class.
Additionally, if our model class defines canonicalize_, validate_, or
autocomplete_ FIELD, generate appropriate an appropriate canonicalizer,
validator, or autocompleter that will call that method with the value to be
validated, canonicalized, or autocompleted.
"validate_FIELD" should return a (success boolean, message) list.
"autocomplete_FIELD" should return a the same kind of list as
Jifty::Action::_autocomplete_argument
"canonicalized_FIELD" should return the canonicalized value.
possible_columns¶
Returns the list of columns objects on the object that the action can update.
This defaults to all of the "containers" or the
non-"private", non-"virtual" and non-"serial"
columns of the object.
possible_fields¶
Returns the list of the "possible_columns"' names.
Usually at the end names are required, however for subclassing column objects
are better, or this method in a subclass turns out to be "map to
column" - "filter" - "map to name" chain.
take_action¶
Throws an error unless it is overridden; use Jifty::Action::Record::Create,
::Update, or ::Delete
SEE ALSO¶
Jifty::Action, Jifty::Record, Jifty::DBI::Record, Jifty::Action::Record::Create,
Jifty::Action::Record::Update, Jifty::Action::Record::Delete
LICENSE¶
Jifty is Copyright 2005-2010 Best Practical Solutions, LLC. Jifty is distributed
under the same terms as Perl itself.