加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl6 – 是否有可能将TT2与Cro一起使用?

发布时间:2020-12-16 06:21:44 所属栏目:大数据 来源:网络整理
导读:我正在考虑使用perl6和Cro来构建一个包含文本内容的网站.是否有关于使用模板工具包(如TT2)和代码示例使用Cro的最佳实践/指导? 解决方法 你看过Cro :: WebApp吗? 见https://github.com/jnthn/cro-webapp – 也可以使用“Template :: Mojo”. 这是一个Cro服
我正在考虑使用perl6和Cro来构建一个包含文本内容的网站.是否有关于使用模板工具包(如TT2)和代码示例使用Cro的最佳实践/指导?

解决方法

你看过Cro :: WebApp吗?

见https://github.com/jnthn/cro-webapp

也可以使用“Template :: Mojo”.

这是一个Cro服务器:

use Cro::HTTP::Router;
use Cro::HTTP::Server;
use Template::Mojo;
my $tmpl = slurp 'views/template.tt';
my $t = Template::Mojo.new($tmpl);
my $application = route
{
  get -> ''
  {
     content 'text/html',$t.render({ title => "AAA",type => "aaa",mode => "AAAaaaAAA" });
   }
}

my Cro::Service $hello = Cro::HTTP::Server.new:
  :host<localhost>,:port<10000>,:$application;
$hello.start;
react whenever signal(SIGINT) { $hello.stop; exit; }

模板文件如下所示:

% my %h = @_;
% my $title = %h<title>;
% my $type  = %h<type>;
% my $mode  = %h<mode>;
%
<html>
  <head>
    <title><%= $title %></title>
  </head>
  <body>
    <h1><%= $type %></h1>
    <p><%= $mode %></p>
  <body>
</html>

服务器代码可以做一些改造(灵感来自Bailador).添加此代码:

sub template ($template,%values)
{
  my $tmpl = slurp "views/$template";
  my $t = Template::Mojo.new($tmpl);
  return content 'text/html',$t.render(%values);
}

并改变“得到”:

get -> ''
  {
    template 'template.tt',{
      title => "AAA",type  => "aaa",mode  => "AAAaaaAAA"
    };
  }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读