Хорошо
vti <[email protected]> писал(а) в своём письме Thu, 06 Jun 2013
12:47:25 +0300:
Это баг интерполяции в фильтре. Постараюсь починить.
On 06/06/2013 12:14 PM, TheAthlete wrote:
Нет..., добавил, но все равно не интерполируется, вот тестовый пример:
#================ test_haml.pl
#!/usr/bin/perl -w
use Modern::Perl;
use utf8::all;
use Text::Haml;
my $haml = Text::Haml->new;
my $html = $haml->render_file('tmpl/index.haml',
title => 'Hello from Haml',
content => [qw/test1 test2/],
test_hash => {
sky => 'blue',
grass => 'green',
},
settings => {
charset => 'utf-8',
},
request => {
uri_base => '/home/theathelete',
},
);
say $html;
#============== tmpl/index.haml
!!! 5
%html
%head
%meta(charset = $settings->{charset})
%title= $title
:javascript
!window.jQuery && document.write('<script type="text/javascript"
src=#{$request->{uri_base}}."/javascripts/jquery.js"><\/script>')
%body
#content
%strong= $content->[1]
%p= $test_hash->{grass}
#================ Вывод:
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<title>Hello from Haml</title>
<script type='text/javascript'>
//<![CDATA[
!window.jQuery && document.write('<script type="text/javascript"
src=}."/javascripts/jquery.js"></script>')
//]]>
</script>
</head>
<body>
<div id='content'>
<strong>test2</strong>
</div>
<p>green</p>
</body>
</html>
vti <[email protected]> писал(а) в своём письме Thu, 06 Jun 2013
11:56:13 +0300:
Так а сама переменная есть?
On 06/06/2013 11:55 AM, TheAthlete wrote:
Use of uninitialized value in substitution iterator at
/usr/local/share/perl5/Text/Haml.pm line 942.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta charset='utf-8' />
<title>Hello from Haml</title>
<script type='text/javascript'>
//<![CDATA[
!window.jQuery && document.write('<script type="text/javascript"
src=}."/javascripts/jquery.js"></script>')
//]]>
</script>
</head>
<body>
<div id='content'>
<strong>test2</strong>
</div>
<p>green</p>
</body>
</html>
Это если использовать интерполяцию с помощью #{}
:javascript
!window.jQuery && document.write('<script type="text/javascript"
src=#{$request->{uri_base}}."/javascripts/jquery.js"><\/script>')
vti <[email protected]> писал(а) в своём письме Thu, 06 Jun 2013
11:46:40 +0300:
Насколько я помню правильный способ второй, используя интерполяцию
#{}. А что именно не работает? Какая ошибка?
On 06/06/2013 11:40 AM, TheAthlete wrote:
Здравствуйте!
Подскажите пожайлуста, как с помощью Haml для Text::Haml
реализовать следующий код:
<script type="text/javascript">/* <![CDATA[ */
!window.jQuery && document.write('<script
type="text/javascript" src="<% request.uri_base
%>/javascripts/jquery.js"><\/script>')
/* ]]> */</script>
Пробую слеюующим образом:
:javascript
!window.jQuery && document.write('<script type="text/javascript"
src=$request->{uri_base}."/javascripts/jquery.js"><\/script>')
но не работает - не получается интерполировать $request->{uri_base}
#{$request->{uri_base}} тоже не работает
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm
--
Написано в почтовом клиенте браузера Opera: http://www.opera.com/mail/
_______________________________________________
Kiev-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/kiev-pm