这是奇怪的,很难解释什么是错的,但我会尽我所能。Perl催化剂编码问题
由于某些原因模板的值改变了他们的编码(我很确定他们是)。
控制器文件(编码UTF-8):
print STDERR "ąęść";
$c->stash->{some_variable} = "ąęść"; # some unicode chars
模板文件(以UTF-8编码):
[% some_variable %]<br>
test: ąęść
如在浏览器输出我得到:
ÄÄÅÄ
test: ąęść
控制台上的输出(启用UTF-8编码):
ąęść
你在你的控制器文件中有'use utf8;'吗? – ThisSuitIsBlackNot 2015-02-06 17:27:23
看起来你的TT配置中没有'ENCODING =>'utf-8'。 – Borodin 2015-02-06 17:53:16
配置没问题。出于某种原因,模板文件内容已损坏。当我从模板文件中删除所有东西,并将其中只有变量,它的作品... – J33nn 2015-02-06 18:14:39