gpt4 book ai didi

symfony - FOSElasticaBundle-JMSSerializerBundle排除策略在FOSUserBundle用户实体上不起作用

转载 作者:行者123 更新时间:2023-12-03 00:28:26 26 4
gpt4 key购买 nike

我正在将FOSElasticaBundle与orm持久性驱动程序以及JMSSerializerBundle序列化程序一起使用。

我的用户由FOSUserBundle管理,我试图为它们建立索引,但排除某些字段,例如密码。

JMSSerializerBundle排除策略(例如@ExclusionPolicy(“all”)@Expose @Exclude)在添加到我的User实体(扩展FOS \ UserBundle \ Model \ User)时没有任何影响。但是这些策略在我的其他实体上可以正常工作。

如何阻止将“盐”和“密码”等字段添加到Elasticsearch索引中?

最佳答案

解决方法是使用'query_builder_method' FOSElasticaBundle配置设置来调用创建queryBuilder的方法,该方法使用DQL部分对象语法仅选择要索引的字段。

以下是一些有用的链接:

DQL部分对象语法:
http://docs.doctrine-project.org/en/2.1/reference/dql-doctrine-query-language.html#partial-object-syntax

使用自定义学说查询生成器:
https://github.com/FriendsOfSymfony/FOSElasticaBundle#use-a-custom-doctrine-query-builder

关于symfony - FOSElasticaBundle-JMSSerializerBundle排除策略在FOSUserBundle用户实体上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21364545/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com