これは既に尋ねられている場合にはお詫び申し上げます。私はいくつかの検索をしてきましたが、簡単な解決策は見つかりませんでした。Twigのパラメータを持つ呼び出し関数
私はsymfony/doctrineプロジェクトを持っています。ビジネスロジックをビューに配置してはならないと仮定して、小枝から関数を呼び出す適切な方法は何ですか。
私はオブジェクトの配列を持っており、ログインしたユーザーが投稿の各オブジェクトの所有者であるかどうかを確認したいと思います。例えば
これは、これが適切に実現することができる方法がベストプラクティスではない場合、この適切な
//in twig template
{% for post in posts %}
{% if post.isOwner(user_id) %}
//do stuff
{% endif %}
{% endfor %}
とポストエンティティでは、この
//in entity
public function isOwner(user_id){
if (post.getId() == user_id)
return true;
return false
}
を持っています。
ロジックをエンティティ(エンティティに適合する)に入れることは、私の意見では非常に良い方法です。あなたのエンティティに合っていないロジックがまだ残っていて、Twigでそれを行う必要がある場合は、Twig拡張を作成する必要があります。しかし、このロジックがビューレイヤに属している場合にのみ、良い解決策です。http://symfony.com/doc/current/templating/twig_extension.html –