All Projects → KnpLabs → rad-fixtures-load

KnpLabs / rad-fixtures-load

Licence: other
A command to load them all

Programming Languages

PHP
23972 projects - #3 most used programming language

Rapid Application Development : Fixtures Load

A command to load them all

Build Status Scrutinizer Code Quality Latest Stable Version Total Downloads Latest Unstable Version License

This library uses the awesome nelmio/alice library.

Official maintainers:

Installation

composer require --dev knplabs/rad-fixtures-load:~1.0
class AppKernel
{
    function registerBundles()
    {
        $bundles = array(
            //...
            new Knp\Rad\FixturesLoad\Bundle\FixturesLoadBundle(),
            //...
        );

        //...

        return $bundles;
    }
}

Usages

Inside your bundle, you have to store your Alice fixtures files into Resources/fixtures/orm.

Load fixtures of all bundles

Just run the command

app/console rad:fixtures:load

Or if you need both resetting your schema, just add -r option

app/console rad:fixtures:load -r

Load fixtures of specific bundles

I've got two bundles, App and Api.

app/console rad:fixtures:load -b App -b Api

The order is important. Fixtures will be loaded following this order.

Use file filtering

If I run this command

app/console rad:fixtures:load -f dev

All files finishing with .dev.yml will be loaded. And just those files.

You can also chain filters.

app/console rad:fixtures:load -f dev -f test

In this case, order doesn't have any importance.

Use Alice provider or Alice processor

You just have to tag your service with knp_rad_fixtures_load.provider or knp_rad_fixtures_load.processor.

my_bundle.my_provider:
    class: My\Provider
    tags:
        - { name: knp_rad_fixtures_load.provider }

my_bundle.my_processor:
    class: My\Processor # implements Nelmio\Alice\ProcessorInterface
    tags:
        - { name: knp_rad_fixtures_load.processor }
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].