問題タブ [template-toolkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
277 参照

perl - Template Toolkitのマクロ引数でHTMLフィルターを使用するにはどうすればよいですか?

私はこのようなものを持っています:[% query | html %]

今、私はそれをとして使用したいと思います

その例を試してみると、|そこでは使用できないため機能しません。これは、TemplateToolkitでは受け入れられません。HTMLエスケープしたいquery。どうやってやるの?

<b>翻訳の順序が上記と同じでない場合があるため、引用符から移動することは解決策ではありません。

0 投票する
2 に答える
589 参照

perl - Template Toolkit for Perlに新しいディレクティブを簡単に追加できますか?

プラグインシステムを介して関数や仮想メソッドを追加する場合は、代わりに独自のディレクティブをTemplateToolkitに追加したいと思います。これは深く掘り下げることなく簡単に実行できTemplate::Grammarますか?そして、CPANで勉強できる例はありますか?

0 投票する
3 に答える
7022 参照

perl - Template toolkit IF on an empty array ref returns true, can I make it false?

So it seems that if I give template toolkit a reference to an array as a parameter

and then have the following code in a template

The else case never gets triggered.

Replacing the parameter code with

seems to solve the issue, however I was wondering if there is a way to make template toolkit evaluate an empty array (passed via reference) as false as there are many instances throughout my project where I believe this is being used (as in HTML template pro it worked as expected).

Thank you all in advance for your assistance.

0 投票する
3 に答える
514 参照

perl - ラベルなしのHTML::FormHandlerレンダリングフィールド

HTML :: FormHandlerフォーミュラを使用して、フォームフィールドのフィールド部分のみをレンダリングしたいと思います。

これにより、フィールドとラベルがレンダリングされます。

0 投票する
1 に答える
553 参照

perl - Perl and Template Toolkit: object stringify in custom filter

in my template(via Template Toolkit), I pass a DateTime object(from DBIx::Class and DBIx::Class::InflateColumn::DateTime). I can do obj.year and all other DateTime operations in my template. But the object gets stringified in my custom filter. I am basically calling [% user.last_visited_date | time_ago %] where time_ago is a custom filter basically looks like this:

here I am expecting a DateTime obj in the custom filter but instead it is stringify..

How do I work around this?

0 投票する
1 に答える
512 参照

perl - ツールキットテンプレートファイル内から結果セットを検索できますか?

私はCatalystを使用し、TTがアクセスできるように結果セットをスタッシュに入れます。

このクラスは、次のようにTTページ内からアクセスする「tournament_participant」と関係があります。

問題は、次のような列で結果を並べ替えたいということです。

ただし、上記は機能しません(何も返されません)。これは可能ですか?

0 投票する
4 に答える
5295 参照

arrays - ソートされたキー/値ペアの配列からソートされたキーとハッシュの配列

Template::Toolkitテンプレートエンジンとして使用するCatalystアプリを開発しています。1ページには、等しい入力要素のリストが必要です。それらは配列から取得できますが、要素の並べ替え順序と説明ラベルの両方が必要です。

並べ替え順序を設定するには、配列を使用します。キーごとに追加の値を格納するには、ハッシュが最適です。TTで両方を組み合わせる方法は?私は両方を使うことができましたが、それは醜く見え、フィールドを変更するときに間違いを引き起こす可能性があります。

ただし、フォーム要素の説明と順序の両方がフロントエンドのものであるため、TTでこれを行うことをお勧めします。

これは私が純粋なPerlでそれを行う方法です:

出力:

これは私が私のテンプレートに書いたものです:

ただし、同じ情報(フィールドのリスト)を2回持つのは本当に醜いです。リストを2回編集することは避けたいのですが、フィールドのリストが長くなると、非常に煩わしくなります(約20項目、データベースの処理を行うのに十分な長さではありません)。

0 投票する
3 に答える
2366 参照

perl - Template Toolkit の somevar.substr() と UTF-8

Catalyst アプリで Template Toolkit を使用します。UTF-8 を使用するように TT を構成しましたが、これまで問題はありませんでした。

ここで、文字列 var の substr() メソッドを呼び出します。残念ながら、 n文字ではなくnバイト後に文字列を分割します。n番目と(n+1)番目のバイトが unicode char を構築する場合、それは分割され、最初のバイトのみが substr() の結果の一部になります。

その動作を修正または回避する方法は?

これまで、Unicode 文字に問題はありませんでした。データベースからのものでも、テンプレート内のテキストからのものでもありません。

編集:これはCatalyst::View::TT、Catalyst アプリでモジュールを構成する方法です。

0 投票する
2 に答える
1635 参照

regex - テンプレート ツールキットで変数の置換を実行できないのはなぜですか?

Template Toolkit を使用していますが、置換機能が機能しません。これが私のコードです...

上記の場合の置換は、item.name に対して何もしません。キックのために、次のように切り替えました...

そして、それは完璧に機能します。

TT で変数を単純に置換できない理由を知っている人はいますか?

0 投票する
1 に答える
461 参照

template-toolkit - テンプレートツールキット:WRAPPERブロック内のテンプレートステートメントを評価しますか?

さて、私は2時間以上マニュアルを調べ、アナグマの本で解決策を見つけようとしましたが、うまくいくものを思い付くことができませんでした。

以下はラッパー(body.tt)です。よくわかります。

ラップされたテンプレートは次のようになります。

そして最後にconst.tt次のようになります:

...そして何らかの理由でbar、ラップされたテンプレート内のインスタンスは評価されません。どのように私がそれを評価することができるかについてのアイデアはありますか?

私が試してみました:

...動作しませんでした。

ラップされたテンプレート(上記の2番目のブロック)では、そのテンプレートに別の変数を追加しなくても、barから変数を評価できるようにしたいことに注意してください。結局のところ、変数はから利用可能であるはずです。const.ttPROCESS 'const.tt'body.tt

そして私は言及するのを忘れました:テンプレートツールキットバージョン2.22