my $output;
# Need to be very careful here.
my $tt = Template->new;
+ unless (ref $r->{config}) {
+ warn "no config for this request\n";
+ $error .= '<br> There was a problem finding configuration for this request';
+ $r->{config} ||= {};
+ }
if ($tt->process(\$error_template,
- { err_type => $type, error => $error,
- config => { %{$r->{config}}},
- request => $r, # We have that at least
+ { err_type => $type, error => $error,
+ config => $r->{config},
+ request => $r,
eval{$self->vars($r)} }, \$output )) {
$r->{output} = $output;
if ($tt->error) { $r->{output} = "<html><body>Even the error template
<h2> Request details </h2>
-<table>
- [% FOR thing = ["model_class", "table", "template", "path",
+<table>
+ [% FOR attribute = ["model_class", "table", "template", "path",
"content_type", "document_encoding", "action", "args", "objects"] %]
- <tr> <td class="lhs"> [%thing %] </td> <td class="rhs"> [%
- request.$thing.list.join(" , ") %] </td></tr>
+ <tr> <td class="lhs"> [% attribute %] </td> <td class="rhs"> [%
+ request.$attribute.list.join(" , ") %] </td></tr>
[% END %]
</table>
<h2> Application configuration </h2>
-<table>
- [% FOR thing = config.keys %]
- <tr> <td class="lhs"> [%thing %] </td> <td class="rhs"> [%
- config.$thing.list.join(" , ") %] </td></tr>
+<table>
+ [% FOR field IN config %]
+ <tr> <td class="lhs"> [% field.key %] </td> <td class="rhs"> [%
+ $field.value.list.join(" , ") %] </td></tr>
[% END %]
</table>