Что это? | Документация | Скачать
Соглашение об именовании переменных
$data — ссылка на хеш переменных. Передается шаблонизатору. Пример —
$data->{text} = 'Какой-то текст';
$T — глобальный объект шаблонизатора. Пример использования —
local $T = new HTML::CTPP2()
— во время инициализации скрипта
$http — глобальная переменная, используемая в качестве префиксов для редиректов.
local $http = 'http://'.$ENV{HTTP_HOST}.$prefix."";
...
Redirect($http."/something/else") ;
$a — локальный объект акшенов. Вполне можно в одном акшене иметь другой объект акшенов для удобного разруливания вложенных акшенов (/admin/create/user, /user/edit/page, /user/edit/info и т.д.)
local $a = SS2::Action->new;
...
$a->add('blog', \&blog);
$db — локальная переменная с объектом SS2::DB
if ( my $db = SS2::DB->new($dbname,$dbhost,$dbuser,$dbpass) ) {
$db->character_set('cp1251','cp1251','cp1251','utf8');
$data->{db} = $db;
} # else error connecting DB
Рекомендуемый стандартный вид акшена
sub default {
my ($data,$path) = @_;
my $db = $data->{db};
$data->{txt} = 'Какой-то текст, например из БД';
$data->{title} = 'Заголовок для страницы';
}