frenchfrogs/reference

Gestion des table de reference


License
GPL-3.0

Documentation

reference

Gestion des tables de références

l'objectif de ce modules est de facilité la crétion de reference dans un projet en apportant un maximum de confort pour les developpeurs. Les fonctions principals sont :

  • Unification des tables de reference dans une seul table (allègement du modèle de donnĂ©e)
  • FacilitĂ© pour les dĂ©veloppeur de crĂ©er de nouvelle rĂ©fĂ©rence Ă  travers des migrations
  • Mise en cache des reference pour ne plus soliciter systematiquement la BDD
  • CrĂ©ation d'un fichier pour via la console pour facilitĂ© l'utilisation de ses rĂ©fĂ©rences

Installation

Si vous souhaitez utiliser l'import des reference pour utiliser des constante dans le code avec l'autocomplétion :

  • verifier que vous avez un fichier Ref.php dans le dossier bootstrap (mĂŞme vide)
  • ajouter "files": ["bootstrap/Ref.php"] dans votre fichier composer.json ou un require_once de fichier dans le fichier bootstrap/app.php
composer require frenchfrogs/reference
php artisan reference:table
php migrate
php artisan reference:build

Et voilĂ !!!!

Comment ca marche

Ajouter des références en Base de donnée

Dans un fichier de migration, mettre le code suivant pour créer un référence

use FrenchFrogs\Models\Reference;

//....

Reference::createDatabaseReference($id, $name, $collection, $data = null );

La fonction ref() est ajouté pour avoir un accès rapide a des listes de collections

$reference = \ref('member.status')->getData();
dd($reference);

Affichera :

array:3 [â–Ľ
  0 => array:7 [â–Ľ
    "reference_id" => "MEMBER_STATUS_ACTIVE"
    "name" => "Actif"
    "collection" => "member.status"
    "data" => "null"
    "deleted_at" => null
    "created_at" => "2016-06-21 11:05:14"
    "updated_at" => "2016-06-21 11:05:14"
  ]
  1 => array:7 [â–Ľ
    "reference_id" => "MEMBER_STATUS_PAID"
    "name" => "Payant"
    "collection" => "member.status"
    "data" => "null"
    "deleted_at" => null
    "created_at" => "2016-06-21 11:05:14"
    "updated_at" => "2016-06-21 11:05:14"
  ]
  2 => array:7 [â–Ľ
    "reference_id" => "MEMBER_STATUS_DELETED"
    "name" => "Supprimé"
    "collection" => "member.status"
    "data" => "null"
    "deleted_at" => null
    "created_at" => "2016-06-21 11:05:14"
    "updated_at" => "2016-06-21 11:05:14"
  ]
]

Affichera :

$reference = \ref('member.status')->pairs();
dd($reference);
array:3 [â–Ľ
  "MEMBER_STATUS_ACTIVE" => "Actif"
  "MEMBER_STATUS_PAID" => "Payant"
  "MEMBER_STATUS_DELETED" => "Supprimé"
]