Skip to content
Useful doctrine hooks.
PHP Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
src
tests
vendor-bin
.editorconfig
.gitattributes
.gitignore
.kodiak.toml
.php_cs.dist
.rmt.yml
.travis.yml
CHANGELOG
LICENSE.md
Makefile
README.md
composer.json
phpstan.neon.dist
phpunit.xml.dist

README.md

Doctrine Extensions

Latest Stable Version Latest Unstable Version License

Total Downloads Monthly Downloads Daily Downloads

Build Status Scrutinizer Code Quality Code Climate Coverage Status

This library provides adds some useful doctrine hooks.

Installation

Open a command console, enter your project directory and execute the following command to download the latest stable version of this library:

composer require core23/doctrine-extensions

Usage

Confirmable entities

If you need entities that needs to be confirmed, just implement the Core23\Doctrine\Model\ConfirmableInterface in your entity class.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\ConfirmableListener.

Deleteable entities

If you need entities that should be soft deleted, just implement the Core23\Doctrine\Model\DeletableInterface in your entity class.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\DeletableListener.

Lifecyle aware enties

If you need lifecyle information (creation / update date), just implement the Core23\Doctrine\Model\LifecycleDateTimeInterface in your entity class.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\LifecycleDateListener.

Position aware entities

If you need sortable entities, just implement the Core23\Doctrine\Model\PositionAwareInterface in your entity class.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\SortableListener.

Unique active entities

If you need entities that should only have one active state, just implement the Core23\Doctrine\Model\UniqueActiveInterface in your entity class.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\UniqueActiveListener.

Table prefix

If you need a prefix for all of you application tables and sequences, you could use the TablePrefixEventListener. If the table name does already start with the defined prefix, it will be ignored.

If you don't need the symfony framework, you need to register the Core23\Doctrine\EventListener\ORM\TablePrefixEventListener.

Symfony usage

If you want to use this library inside symfony, you can use a bridge.

Enable the Bundle

Then, enable the bundle by adding it to the list of registered bundles in config/bundles.php file of your project:

// config/bundles.php

return [
    // ...
    Core23\Doctrine\Bridge\Symfony\Bundle\Core23DoctrineBundle::class => ['all' => true],
];

Configure the Bundle

Create a configuration file called core23_doctrine.yaml:

# config/packages/core23_doctrine.yaml

core23_doctrine:
    table:
        prefix: 'acme_'

License

This library is under the MIT license.

You can’t perform that action at this time.