1

SonataUserBundleJMSSerializerBundleを使用していますが、シリアル化されたオブジェクトのトークンとその他のプロパティを非表示にしたいと考えています。

SonataUserBundle でovvrideしたいファイルはResources/config/serializer/Model.User.xmlです。

これが私の構成です:

app/config.yml

jms_serializer: metadata: auto_detection: true directories: - { path: %kernel.root_dir%/Resources/SoantaUserBundle/serializer, namespace_prefix: 'Sonata\UserBundle' } - { path: %kernel.root_dir%/Resources/FOSUserBundle/serializer, namespace_prefix: 'FOS\UserBundle' }

app/Resources/SonataUserBundle/serializerで2 つのファイルを試しました。

モデル.ユーザー.xml

<?xml version="1.0" encoding="UTF-8"?> <serializer> <class name="Sonata\UserBundle\Model\User" exclusion-policy="all" xml-root-name="user"> <property name="token" type="string" expose="false" since-version="1.0" groups="sonata_api_read,sonata_api_write,sonata_search" /> </class> </serializer>

モデル.ユーザー.yml

Sonata\UserBundle\Model\User: exclusion_policy: ALL properties: token: expose: false

両方のファイルが機能していないようです。

FOSUserBundleからいくつかのプロパティを隠すことができましたが、SonataUserBundleに関連するものを隠すのに問題があるようです関連性があるかどうかはわかりませんが、 HWIOauthBundleも使用していることに言及したいと思います。

どんな助けでも大歓迎です。

4

1 に答える 1