Download the PHP package miklosfarkas/dynamic-discriminator-map-bundle without Composer
On this page you can find all versions of the php package miklosfarkas/dynamic-discriminator-map-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download miklosfarkas/dynamic-discriminator-map-bundle
More information about miklosfarkas/dynamic-discriminator-map-bundle
Files in miklosfarkas/dynamic-discriminator-map-bundle
Download miklosfarkas/dynamic-discriminator-map-bundle
More information about miklosfarkas/dynamic-discriminator-map-bundle
Files in miklosfarkas/dynamic-discriminator-map-bundle
Vendor miklosfarkas
Package dynamic-discriminator-map-bundle
Short Description DCSDynamicDiscriminatorMapBundle simplifies the use of Doctrine Single Table Inheritance mapping strategy in Symfony2.
License MIT
Homepage https://github.com/miklosfarkas/DCSDynamicDiscriminatorMapBundle
Package dynamic-discriminator-map-bundle
Short Description DCSDynamicDiscriminatorMapBundle simplifies the use of Doctrine Single Table Inheritance mapping strategy in Symfony2.
License MIT
Homepage https://github.com/miklosfarkas/DCSDynamicDiscriminatorMapBundle
Please rate this library. Is it a good library?
Informations about the package dynamic-discriminator-map-bundle
DynamicDiscriminatorMapBundle
DynamicDiscriminatorMapBundle simplifies the use of Doctrine Single Table and Class Table Inheritance mapping strategy in Symfony 5.3
With this bundle you can adds dynamically all classes of a hierarchy to the options of DiscriminatorMap using a config file. This way you can apply the methodology of 'decoupling'
Installation
Step 1: Download DynamicDiscriminatorMapBundle using composer
Add DynamicDiscriminatorMapBundle in your composer.json:
{
"require": {
"miklosfarkas/dynamic-discriminator-map-bundle": "dev-master"
}
}
Step 2: Enable the bundle
Enable the bundle in the kernel:
<?php
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new DCS\DynamicDiscriminatorMapBundle\DCSDynamicDiscriminatorMapBundle(),
);
}
Configuration
Parent class
This is an example of a parent class
<?php
namespace Acme\PersonBundle\Entity;
/**
* @ORM\Entity
* @ORM\Table(name="person")
* @ORM\InheritanceType("SINGLE_TABLE")
* @ORM\DiscriminatorColumn(name="type", type="string")
* @ORM\DiscriminatorMap({"person" = "Person"})
*/
class Person
{
// ...
}
Children classes
This is an example of two children classes
<?php
namespace Acme\StudentBundle\Entity;
use Acme\PersonBundle\Entity\Person;
/**
* @ORM\Entity
*/
class Student extends Person
{
// ...
}
<?php
namespace Acme\TeacherBundle\Entity;
use Acme\PersonBundle\Entity\Person;
/**
* @ORM\Entity
*/
class Teacher extends Person
{
// ...
}
Configuration file
# app/config/config.yml
dcs_dynamic_discriminator_map:
mapping:
person:
entity: Acme\PersonBundle\Entity\Person
map:
student: Acme\StudentBundle\Entity\Student
teacher: Acme\TeacherBundle\Entity\Teacher
All versions of dynamic-discriminator-map-bundle with dependencies
PHP Build Version
Package Version
Requires
php Version
>=7.4
symfony/framework-bundle Version ^5.3
doctrine/orm Version >=2.4
doctrine/doctrine-bundle Version >=2.4
symfony/framework-bundle Version ^5.3
doctrine/orm Version >=2.4
doctrine/doctrine-bundle Version >=2.4
The package miklosfarkas/dynamic-discriminator-map-bundle contains the following files
Loading the files please wait ....