Skip to content

Doctrine Data Fixture Module for Zend/Laminas with cli integration

Notifications You must be signed in to change notification settings

revenkroz/laminas-doctrine-fixture-module

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laminas Doctrine Fixture module

Introduction

This is fork from Houndog/DoctrineDataFixtureModule.

The DoctrineDataFixtureModule module intends to integrate Doctrine2 ORM Data Fixtures with Zend Framework 3.

Installation

Add this project in your repositories in composer.json:

"repositories": [
    {
      "type": "git",
      "url": "https://github.com/revenkroz/laminas-doctrine-fixture-module"
    }
]

Install package:

composer req revenkroz/laminas-doctrine-fixture-module:dev-main

Add DoctrineFixtureModule to your modules.

Register Fixtures

To register fixtures with Doctrine module add the fixtures in your configuration.

<?php

return [
    'doctrine' => [
        'fixture' => [
            'ModuleName' => __DIR__ . '/../src/ModuleName/Fixture',
        ],
    ],
];

Usage

Default

./vendor/bin/doctrine-module orm:fixtures:load 

Purge with truncate and without confirmation

./vendor/bin/doctrine-module orm:fixtures:load -n --purge-with-truncate 

Append data instead of delete

./vendor/bin/doctrine-module orm:fixtures:load -n --append

How to inject container into fixtures file

<?php

namespace Application\DataFixtures;

use Doctrine\Common\DataFixtures\FixtureInterface;
use Doctrine\Common\Persistence\ObjectManager;
use DoctrineDataFixtureModule\ContainerAwareInterface;
use DoctrineDataFixtureModule\ContainerAwareTrait;

class LoadUser implements FixtureInterface, ContainerAwareInterface
{
    use ContainerAwareTrait;

    /**
     * @param ObjectManager $manager
     */
    public function load(ObjectManager $manager)
    {
        $myService = $this->container->get('my_service');        
    }
}

About

Doctrine Data Fixture Module for Zend/Laminas with cli integration

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%