lyssal/monnaie-bundle

Bundle permettant de gérer des monnaies

Installs: 27

Dependents: 1

Suggesters: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

Type:symfony-bundle

0.1 2015-10-29 12:24 UTC

README

LyssalMonnaieBundle permet la manipulation de monnaies.

SensioLabsInsight

Entités

Toutes les entités possèdent leur manager et leur gestion administrative (optionnelle) si vous utilisez Sonata.

Les entités sont :

  • Monnaie

Utilisation

Vous devez créer un bundle héritant LyssalMonnaieBundle :

namespace Acme\MonnaieBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class AcmeMonnaieBundle extends Bundle
{
    public function getParent()
    {
        return 'LyssalMonnaieBundle';
    }
}

Ensuite, vous devez créer dans votre bundle les entités héritant celles de LyssalMonnaieBundle et redéfinir certaines propriétés :

namespace Acme\MonnaieBundle\Entity;

use Lyssal\MonnaieBundle\Entity\Monnaie as BaseMonnaie;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\Mapping\UniqueConstraint;

/**
 * Monnaie.
 * 
 * @ORM\Entity()
 * @ORM\Table
 * (
 *     name="acme_pays",
 *     uniqueConstraints=
 *     {
 *         @UniqueConstraint(name="CODE", columns={ "monnaie_code" }),
 *         @UniqueConstraint(name="SYMBOLE", columns={ "monnaie_symbole" })
 *     }
 * )
 */
class Monnaie extends BaseMonnaie
{
    
}

Vous devez ensuite redéfinir les paramètres suivants :

  • lyssal.monnaie.entity.monnaie.class : Acme\MonnaieBundle\Entity\Monnaie

Exemple avec sur Acme/MonnaieBundle/Resources/config/services.xml :

<?xml version="1.0" ?>
<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
    <parameters>
        <parameter key="lyssal.monnaie.entity.monnaie.class">Acme\MonnaieBundle\Entity\Monnaie</parameter>
    </parameters>
</container>

Managers

Les services sont :

  • lyssal.monnaie.manager.monnaie

Exemple d'utilisation

Dans votre contrôleur :

$monnaies = $this->container->get('lyssal.monnaie.manager.monnaie')->findAll();

Utiliser vos managers hérités de LyssalGeographieBundle

Si vous utilisez vos propres managers héritant des managers de LyssalMonnaieBundle, vous pouvez redéfinir les paramètres suivants :

  • lyssal.monnaie.manager.monnaie.class

Exemple en XML :

<parameters>
    <parameter key="lyssal.monnaie.manager.monnaie.class">Acme\MonnaieBundle\Manager\MonnaieManager</parameter>
</parameters>

SonataAdmin

Les entités seront automatiquement intégrées à SonataAdmin si vous l'avez installé.

Si vous souhaitez redéfinir les classes Admin, il suffit de surcharger les paramètres suivants :

  • lyssal.monnaie.admin.monnaie.class

Installation

  1. Mettez à jour votre composer.json :
"require": {
    "lyssal/monnaie-bundle": "*"
}
  1. Installez le bundle :
php composer.phar update
  1. Mettez à jour AppKernel.php :
new Lyssal\StructureBundle\LyssalStructureBundle(),
new Lyssal\MonnaieBundle\LyssalMonnaieBundle(),
new Acme\MonnaieBundle\AcmeMonnaieBundle(),
  1. Créez les tables en base de données :
php app/console doctrine:schema:update --force

Commandes

Importer des données

Vide et importe des données :

lyssal:monnaie:database:import

Attention : Les tables seront automatiquement vidées lors de l'appel de cette commande.

Le remplissage de la base concerne :

  • Ajout d'un jeu de données avec des monnaies