1

在我的 Symfony 项目中,我们想使用 Gedmo/Loggable 插件。

不幸的是,我没有为这个插件找到明确的文档。只是为了完整的 Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle() https://symfony.com/doc/current/bundles/StofDoctrineExtensionsBundle/index.html

我的数据库中有“ext_log_entries”表。但是当我在记录的实体上更改某些内容时,没有条目。

配置.yml:

orm:
    auto_generate_proxy_classes: true #"%kernel.debug%"
    naming_strategy: doctrine.orm.naming_strategy.underscore
    auto_mapping: true


    mappings:
      gedmo_loggable:
          type: annotation
          prefix: Gedmo\Loggable\Entity
          dir: "%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Loggable/Entity"
          alias: GedmoLoggable # (optional) it will default to the name set for the mappingmapping
          is_bundle: false

实体

/**
 * company
 *
 * @ORM\Table(name="company")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\companyRepository")
 * @ORM\HasLifecycleCallbacks()
 * 
 * @Gedmo\Loggable
 */
class company 
{

    /**
     * @var string 
     * @Gedmo\Versioned
     */
    private $companyName;
}

谁能告诉我,我的错误在哪里?

4

1 回答 1

2

我找到了原因。

我没有将服务注入 services.yml

  gedmo.listener.loggable:
        class: Gedmo\Loggable\LoggableListener
        tags:
            - { name: doctrine.event_subscriber, connection: default }

在教程中没有找到这一步。现在它工作正常。

于 2017-01-24T16:42:53.017 回答