The view template takes some objects (usually just one) from objects and displays the object's properties in a table.
view
objects
It gets the displayable form of a column's name from the hash returned from the column_names method:
column_names
#%]
<TR> <TD class="field"> [% classmetadata.colnames.$col; %] </TD> <TD> [%
#=cut
IF col == "url"; # Possibly too much magic. "<A HREF="; item.url; "> "; item.url; "</A>"; ELSE;
#=for doc
#One interesting macro used in this template is maybe_link_view:
maybe_link_view
maybe_link_view(item.$col); %]
[%#
This tests whether or not the returned value is an object, and if so, creates a link to a page viewing that object; if not, it just displays the text as normal. The object is linked using its stringified name; by default this calls the name method, or returns the object's ID if there is no name method or other stringification method defined.
name
The view template also displays a list of other objects related to the first one via has_many style relationships; this is done by calling the related_accessors method - see "related_accessors" in Model - to return a list of has-many accessors. Next it calls each of those accessors, and displays the results in a table.
has_many
related_accessors
#%] [% view_related(item);
button(item, "edit"); button(item, "delete"); %] [% END; %]
To install Maypole, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Maypole
CPAN shell
perl -MCPAN -e shell install Maypole
For more information on module installation, please visit the detailed CPAN module installation guide.