use MRO::Compat;
use Scalar::Util qw/blessed weaken/;
-our $VERSION = '0.39';
+our $VERSION = '0.41';
$VERSION = eval $VERSION;
__PACKAGE__->mk_accessors('template');
__PACKAGE__->mk_accessors('expose_methods');
__PACKAGE__->mk_accessors('include_path');
+__PACKAGE__->mk_accessors('content_type');
*paths = \&include_path;
}
unless ( $c->response->content_type ) {
- $c->response->content_type('text/html; charset=utf-8');
+ my $default = $self->content_type || 'text/html; charset=utf-8';
+ $c->response->content_type($default);
}
$c->response->body($output);
die $self->template->error if $self->{render_die};
return $self->template->error;
}
- $c->log->debug('The Catalyst::View::TT render() method will start dying on error in a future release. Unless you are calling the render() method manually, you probably want the new behaviour, so set render_die => 1 in config for ' . blessed($self) . '. If you wish to continue to return the exception rather than throwing it, add render_die => 0 to your config.') if $c->debug;
+ $c->log->debug('The Catalyst::View::TT render() method will start dying on error in a future release. Unless you are calling the render() method manually, you probably want the new behaviour, so set render_die => 1 in config for ' . blessed($self) . '. If you wish to continue to return the exception rather than throwing it, add render_die => 0 to your config.') if $c && $c->debug;
return $self->template->error;
}
return $output;
[% uri_for_css('home.css') %]
+=head2 content_type
+
+This lets you override the default content type for the response. If you do
+not set this and if you do not set the content type in your controllers, the
+default is C<text/html; charset=utf-8>.
+
+Use this if you are creating alternative view responses, such as text or JSON
+and want a global setting.
+
+Any content type set in your controllers before calling this view are respected
+and have priority.
+
=head2 C<CATALYST_VAR>
Allows you to change the name of the Catalyst context object. If set, it will also