/ / Función redonda o de techo en Template Toolkit - perl, catalizador

Función Round o Ceil en Template Toolkit - perl, catalizador

Necesito que se redondee un valor en el Kit de herramientas de plantilla de Perl. Pero no puedo usar ceil().

[%interestRate = ceil(mortgage.interest_rate / 100)%]

La respuesta muestra un null valor.

Respuestas

4 para la respuesta № 1

Creo que la sintaxis para proporcionar ceil es

$c->stash->{ceil} = sub { ceil($_[0]) };

[% c.ceil(c.mortgage.interest_rate / 100) %]

Pero generalmente es mejor hacer sus cálculos fuera de las plantillas.

$c->stash->{mortgagetInterestRate} = ...;

6 para la respuesta № 2

Si prefiere un módulo CPAN, busque Template::Plugin::POSIX. Este módulo proporciona, entre otros, ceil y floor funciones:

[% USE POSIX -%]
[% POSIX.ceil(0.5) %]
[% POSIX.floor(0.5) %]

Salida:

1
0

5 para la respuesta № 3

Tal vez necesite una directiva de división:

[% 15 / 6 %] -> 2.5

[% 15 div 6 %] -> 2

[% 15 mod 6 %] -> 3

El operador div devuelve el resultado entero de la división. Ambos y mod devuelve el módulo (es decir, el resto) de la división.

http://www.template-toolkit.org/docs/manual/Directives.html


0 para la respuesta № 4

Si el último dígito no importa:

[% number FILTER format("%.2f"); %]