Doctrine ODM-схема для электронной коммерции - PullRequest
0 голосов
/ 27 февраля 2020

Я новичок и хотел бы получить знания о sql, mongodb, структуре документов. Я пытался сделать документы для платформы электронной коммерции. У меня есть продукт. json и сопоставление документов из-за этого, но я застрял по поводу doctrine odm ссылочных отношений. Мои коды не работают.

Структура, которую я хочу

    Product 
{
    id: 
    name:
    price: [{price1, discount2}, {price2, discount2}, ...]
    images: [{img1,timg1}, {img2,tim2}]
    comments: {[id, username, comment], ...}
    shop: [{shopinfo...}]

}

Итак, я думаю, что цена, изображения и комментарии должны быть встроены в документ. Магазин, продукт имеет отношение один к одному, верно? Я кодирую это с помощью ссылки doctrine odm в api-платформе с mongodb. Здесь - мои коды.

1 Ответ

0 голосов
/ 03 марта 2020

Я сделал это с использованием doctrine odm ссылок. Для создания ссылок мы должны создавать переменные для взаимодействия классов между собой. Например, в классе Product

/**
 * @ODM\ReferenceMany(targetDocument=Price::class, mappedBy="product", cascade={"all"}, storeAs="id")
 */

public $prices;

In в классе Price

/**
 * @ODM\ReferenceOne(targetDocument=Product::class, inversedBy="prices", storeAs="id")
 */

public $product;

В ссылках api-платформы могут использоваться ссылки iri.

...