两个插件为sylius修改了一个学说实体

时间:2018-09-21 18:28:46

标签: sylius

我开始学习Sylius,但找不到我的问题的答案。

例如

我有两个插件。 PluginOne,PluginTwo。将其安装到作曲家的私有存储库中(例如:saits) 我有一个学说实体Sylius \ Component \ Product \ Model \ Product

我插件上的每一个都自定义模型Sylius \ Component \ Product \ Model \ Product。

例如

PluginOne-将字段guid添加到实体中 PluginTwo-将归档的content_hash添加到实体

我该怎么办? 我关注此文档 https://docs.sylius.com/en/1.2/customization/model.html 但是找不到我的问题的答案。

1 个答案:

答案 0 :(得分:0)

我已经开发了几个可重复使用的Sylius插件。我发现扩展核心模型的最便捷方法是遵循以下规则:

  1. Sylius核心模型只能在项目的src/文件夹中扩展。
  2. 第三方插件可能具有核心模型扩展的特征。
  3. 这应该在第三方插件的README.md中进行描述

例如:

namespace AppBundle\Entity;

use Acme\OrderPlugin\Model\OrderInterface as AcmeOrderPluginOrderInterface;
use Acme\OrderPlugin\Model\OrderTrait as AcmeOrderPluginTrait;
use Acme\PromotionPlugin\Model\Traits\OrderGiftPromotionTrait as AcmePromotionPluginGiftPromotionTrait;
use Sylius\Component\Core\Model\Order as BaseOrder;

class Order extends BaseOrder implements AcmeOrderPluginOrderInterface
{
    use AcmeOrderPluginTrait;
    use AcmePromotionPluginGiftPromotionTrait;
}