in reply to Re: Mojolicious, layouts and content generating.
in thread Mojolicious, layouts and content generating.

#!/usr/bin/perl -- # Automatically use-s strict/warnings/utf8 and feature :5.10 use Mojolicious::Lite; sub mojo_index { my( $self ) = @_; my $time = time; my @three = ( 1..3 ); return $self->render( title => "Mojo $time", thumbs => \@three ); } ## map paths to subroutines ### #~ route named 'index', render's template index.html.ep if html is acc +epted get '/' => \&mojo_index => 'index';;; #~ https://localhost:3000/index #~ https://localhost:3000/index.html #~ https://localhost:3000/index.txt get '/index' => sub { shift->render( title => "Mojo \$time" , thumbs = +> [ 6,6,6] ) }; helper thumbs => sub { [ 9,9,9 ] }; helper thumbstring => sub { join ' ', @{[ 9,9,9 ]} }; # Start the Mojolicious command system _aka_ shagadelic('daemon'); app->start; #~ https://metacpan.org/pod/Mojolicious::Plugin::DefaultHelpers#includ +e __DATA__ @@ thumbs.html.ep <b> I am thumbs.html.ep </b> <dl> <dt> $thumbs <dd> <%= $thumbs =%> <dt> @$thumbs <dd> <%= join ' ', @$thumbs =%> <dt> thumbs() <dd> <%= join ' ', thumbs(); =%> <dt> @{thumbs()} <dd> <%= join ' ', @{thumbs()}; =%> <dt> thumbstring() <dd> <%= thumbstring =%> </dl> @@ index.txt.ep If you ask for text you will get text its <%= title %> @@ index.html.ep <html> <head> <title><%= title =%></title> <meta charset="utf-8" /></meta> </head> <body> <h1><%= title =%></h1> <dl> <dt> $thumbs <dd> <%= $thumbs =%> <dt> @$thumbs <dd> <%= join ' ', @$thumbs =%> <dt> thumbs() <dd> <%= join ' ', thumbs(); =%> <dt> @{thumbs()} <dd> <%= join ' ', @{thumbs()}; =%> <dt> thumbstring() <dd> <%= thumbstring =%> </dl> <hr> <div> <%= include 'thumbs' =%> </div> </body> </html>