我无法理解商业逻辑应该在哪里。
例如: 我根据用户角色用实体中的一些数据来渲染标记。 如果我正在使用yii(不要讨厌我)框架,在视图方面它将是那样的东西:
<td>
<?php if ($model->isEngineer()): ?>
<?= $model->getEngineerData(); ?>
<?php elseif ($model->isAdmin()): ?>
<?= $model->getAdminData(); ?>
<?php else? ?>
<?= $model->getOtherData(); ?>
<?php endif ?>
<td>
根据最好的Symfony最佳实践,我在实体类中没有isEngineer,getEngineerData等方法,我也不会调用Model方面的任何方法。所以我创建了一些twig扩展,但是如何将变量(对象/属性不仅仅是stings)从.html.twig发送到twig扩展,或者如何处理业务逻辑?