-[% MACRO button(obj, action) BLOCK; %]
+[%#
-<TD>
-<FORM METHOD="post" ACTION="[%base%]/[%classmetadata.moniker%]/[%action%]/[%obj.id%]">
- <INPUT TYPE="submit" NAME="[%action%]" VALUE="[%action%]">
-</FORM>
-</TD>
-[% END %]
+=for doc
-[% INCLUDE header %]
+The C<view> template takes some objects (usually just one) from
+C<objects> and displays the object's properties in a table.
+
+=cut
+#%]
+[% PROCESS macros %]
+[% INCLUDE header %]
[% FOR item = objects %]
-<h2> [% item.name %]</h2>
+[% view_item(item); %]
+[%#
-[% FOR col = classmetadata.columns.list;
- NEXT IF col == "id";
- "<P>";
- classmetadata.colnames.$col; ":";
- " "; item.$col;"</p>";
- END;
+=for doc
+
+The C<view> template also displays a list of other objects related to the first
+one via C<has_many> style relationships; this is done by calling the
+C<related_accessors> method - see L<Model/related_accessors> - to return
+a list of has-many accessors. Next it calls each of those accessors, and
+displays the results in a table.
+
+#%]
+ <br /><a href="[%base%]/[%item.table%]/list">Back to listing</a>
+[% view_related(item); %]
+
+[%
button(item, "edit");
button(item, "delete");
- "</tr>";
-END;
%]
-
+[% END; %]
+[% INCLUDE footer %]