我只想使用JMSSerializerBundle和FOSRestBundle公開我的User類的幾個屬性。 好像串行器捆綁軟件沒有讀取我的配置文件。Symfony2 JMSSerializerBundle公開YML中的屬性
我的用戶級別在src/AppBundle/Entity/User
,它擴展了FOSUserBundle用戶類。
這裏是我的用戶等級:
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
use Symfony\Component\Validator\Constraints as Assert;
/**
* User
*
* @ORM\Table(name="backoffice_user")
* @ORM\Entity(repositoryClass="AppBundle\Entity\Repository\UserRepository")
*/
class User extends BaseUser
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string
*
* @ORM\Column(name="lastname", type="string", length=70)
*/
private $lastname;
/**
* @var string
*
* @ORM\Column(name="firstname", type="string", length=70)
*/
private $firstname;
}
這是我的應用程序/文件config.yml
jms_serializer:
metadata:
debug: true
auto_detection: true
而且在src/AppBundle/Resources/config/serializer/Entity.User.yml
的YML mappgin文件:
AppBundle\Entity\User:
exclusion_policy: ALL
exclude: true
properties:
email:
exclude: true
expose: true
文件(或至少沒有考慮到),因爲我的API將我的實體的所有字段返回給我。
我忘了什麼嗎?
非常感謝你,就是這樣:)我需要配置它的子屬性,如「姓氏」,我想我必須在Entity.User.yml文件中這樣做 – Hakim
當你做出請記住清除Symfony緩存,app/cache文件夾。 – Nicodemuz