コンマ区切りのリストとして、ビューに関連モデルのリストを表示したいと考えています。
Posts モデルと関連するタグpost.getTags()
があり、関連するモデルを取得するとしますが、正しい出力を生成する方法でそれらを連結する方法がわかりません。
単純な PHP ビューでは、HTML を配列に入れ、implode(', ', $tagLinks)
.
Volt で同じ出力を得るにはどうすればよいですか?
ボルトエンジン内にフィルターを作成します。
$compiler = $volt->getCompiler();
$compiler->addFilter('joiner', function($resolvedArgs, $exprArgs) {
$text = 'implode(", ", ' . $resolvedArgs . ')';
return $text;
});
テンプレート内でその「結合者」フィルターを使用します。
{{ post.getTags() | joiner }}
最後に。フィルターや関数を作成するのが面倒な場合は、php コードを入力してください。ボルトでの作業です。
some tags : <?= implode(', ', $tagLinks) ?>
join
編集:ボルトには既にfilterがあると思います。http://docs.phalconphp.com/en/latest/reference/volt.html#filtersを参照してください。
結合フィルターが既にあります:{{ tagLinks|join(",") }}