Skip to content

gridonic/DatabaseUtilsServiceProvider

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DatabaseUtilsServiceProvider

Build Status

This is a simple collection of utilities for your database for Silex and Doctrine DBAL.

Install

As usual, just include gridonic/database-utils-service-provider in your composer.json , and register the service.

$app->register(new \Gridonic\Provider\DatabaseUtilsServiceProvider(), array(
    'database_utils.fixtures'       => PATH_RESOURCES . '/fixtures/*.yml',
    'database_utils.password_keys'  => array('password'),
    'database_utils.security.salt'  => 'abcd',
));

Parameters

An overview of the possible parameters

database_utils.fixtures

required for fixtures All your fixtures-files.

database_utils.password_keys

optional An array of keys of table-columns, in which you are saving passwords. The values will be automatically encoded before insert.

database_utils.security.salt

required for database_utils.password_keys To encode the passwords, we use this salt.

Commands

When you have registered the ConsoleServiceProvider correct, you can use the following commands in your console.

database:drop

Clears your database

database:reset

Resets your database. Means:

database:fixtures:load

Loads example-data from your fixtures-files into the database.

when you set the password_keys and the salt, all the values for the password_keys (p.E. 1234 as password) will be encoded before insert. All the passwords will be encoded by the Silex\Provider\SecurityProvider. You have to register the SecurityProvider before you can use this function.

Example 01_test.yml

test:
    -
        id: 1
        created: 1000000000
        username: abc
        email: abc@abc.com
        password: 1234
    -
        id: 2
        created: 1000000001
        username: def
        email: def@abc.com
        password: 1234

Example to register the SecurityProvider

$app->register(new Silex\Provider\SecurityServiceProvider(), array(
    'security.firewalls' => array(
        'private' => array(
            'pattern' => '^/admin',
            'http' => true,
            'users' => array(
                'admin' => array('ROLE_ADMIN', 'ASv5vPSea0zB3EIpIB/mLOFAxkMIfh1EkTozyenPTZa0mGAiTC3n+mCAEdcYiITruuPaFb6GWFDiyF5fvJtqOg=='),
            ),
        ),
    ),
));

Licence

The DatabaseUtilsServiceProvider is licensed under the MIT license.