Сериализация сущностей с ассоциациями

У меня есть объект (элемент), который имеет отношение «многие к одному» к другому объекту (типу), объявленному здесь:

     /**
     * @ORM\ManyToOne(targetEntity="Type", inversedBy="item")
     * @ORM\JoinColumn(name="type_id", referencedColumnName="id", nullable=true)
     * @Expose
     */
    protected $itemType;

И когда я сериализую элементы, он включает другие атрибуты ссылочного объекта (Тип), когда все, что мне нужно, это просто идентификатор:

item_type: {
     id: 1
},

вместо этого:

item_type: {
     id: 1,
     name: "Case & Cover",
     description: "Keep your phone safe with stylish cases and covers"
},

Я прочитал документацию и протестировал группы и максимальную глубину, но не повезло, и просматривая проблемы, с которыми я столкнулся, это: https://github.com/schmittjoh/JMSSerializerBundle/issues/61#issuecomment-3297955

эта функция уже включена?

используя "jms/serializer-bundle": "dev-master"

ИЗМЕНИТЬ

это образец сериализованного объекта с ассоциациями:

{
    id: 1,
    name: "iPhone 5c Slim Genuine Leather Portfolio Case with Stand - Classic Black",
    price: 29.95,
    description: "...",
    image: "1.jpg",
    item_type: {
        id: 1,
        name: "Case & Cover"
    },
    item_brand: [
        {
            id: 1,
            name: "Apple"
        }
    ]
}

что я действительно хотел, так это (без каких-либо дополнительных атрибутов связанного объекта): (используя JMS Serializer, поскольку это потрясающая библиотека:))

{
    id: 1,
    name: "iPhone 5c Slim Genuine Leather Portfolio Case with Stand - Classic Black",
    price: 29.95,
    description: "...",
    image: "1.jpg",
    item_type: {
        id: 1
    },
    item_brand: [
        {
            id: 1
        }
    ]
}

person user1076813    schedule 08.01.2014    source источник


Ответы (1)