这是我的环境:
我有一个实体:
Object |____ id (integer) |____ foo (string) |____ configurations (collection)
该属性configurations
是使用a Configuration
映射的实体的集合oneToMany
.无论如何,这看起来像这样:
Configuration |____ id (integer) |____ bar (string) |____ name (string, nullable)
我有一个服务来获得一个object
:
该服务是一个管理许多项目对象的包.
此服务不知道哪个项目调用它.
此服务是一组过滤器,事件侦听器和SQL查询.(约2K行)
考虑一下我不能/不想更新它的get过程,我想在这里做什么.
我有一个我想在我的控制器中执行的操作,如下所示:
$objMgr = $this->get('objectManager'); //get my service I talked before $object = $objMgr->findOneById(); //get my object return array('object' => $object);// render template
我有很多主题管理最终用户屏幕,每个主题都有一个twig文件:
theme1 |____ object_details.html.twig theme2 |____ object_details.html.twig themeX |____ object_details.html.twig
这些object_details.html.twig
代码用于打印配置.
{% for config in object.configurations %} {# div config.blablabla etc. #} {% endfor %}我的问题 :
根据上面的上下文,我可以排除name
属性不为null的所有配置吗?
答案不会编辑树枝文件(我知道怎么做^^)
我想确保排除a configuration
,不会被doctrine检测到,并且它会config
在代码中的某个随机刷新中删除我的数据库.
答案可能是:"老兄,我们做不到".事实上,我很想知道它是否可能.我现在不知道.
答案必须尊重一些最佳实践:)
评论期待:为什么不编辑twig文件?:我有很多主题,我想知道是否可以做一次.
为什么不在数据库查询中排除结果?:因为我希望使用此getter在我的其他页面和项目中进行这些配置.
+50为最好的尝试:)