Jifty::Action::Record(3) 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

LICENSE

Jifty is Copyright 2005-2010 Best Practical Solutions, LLC. Jifty is distributed under the same terms as Perl itself.