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é"
]