Le Scaffolding
Le scaffolding (échafaudage) est obsolète depuis la version 1.6.0.
Le scaffolding de CodeIgniter vous donne un moyen rapide et facile d'ajouter, modifier ou supprimer des données de votre base de donnés au cours du développement.
Très Important: Le scaffolding ne doit être utilisé qu'en environnement de développement. Ce comportement n'est que faiblement sécurisé puisqu'il ne nécessite qu'un mot "secret". Ce qui veut dire que n'importe qui ayant accès à votre CodeIgniter pourrait potentiellement modifier ou supprimer vos données. Si vous utilisez ce comportement, assurez-vous de le désactiver immédiatement après utilisation et surtout ne le laissez pas actif en environnement de production. Pensez aussi à configurer un mot secret pour l'utiliser.
Pourquoi utiliser le scaffolding ?
Typiquement lorsque vous créez une nouvelle table au cours du développement, vous pouvez souhaiter lui ajouter rapidement des données afin de pourvoir l'utiliser. Sans scaffolding vous devrez utiliser des requêtes insert par la ligne de commande ou un outil de gestion de base de donnée comme phpMyAdmin. Avec le scaffolding vous pouvez très simplement ajouter des données et immédiatement les utiliser. Vous pouvez tout aussi facilement les supprimer.
Indiquer un Mot Secret
Avant d'utiliser le scaffolding, prenez le temps de définir un mot secret. Le scaffolding sera déclenché lorsque l'URL rencontrera ce mot donc prenez soin de choisir un mot compliqué pour qu'il ne puisse pas être deviné facilement.
Pour renseigner ce mot secret, ouvrez le fichier application/config/routes.php et recherchez la ligne suivante :
$route['scaffolding_trigger'] = '';
Une fois localisée, ajoutez-y votre mot secret.
Remarque : Le mot secret ne doit pas commencer par un underscore.
Activer le Scaffolding
Remarque : Pour que les informations suivantes soient utiles, vous devez savoir ce qu'est un contrôleur et comment le manipuler. Vous devrez avoir configuré CodeIgniter pour qu'il se connecte automatiquement à vos bases de données. Si ce n'est pas le cas, nous vous encourageons vivement à lire les chapitres concernés dans le guide. Enfin, vous devrez aussi comprendre ce qu'est un constructeur, car pour activer le scaffolding vous devrez l'initialiser comme suit :
<?php
class Blog extends Controller {
function Blog()
{
parent::Controller();
$this->load->scaffolding('table_name');
}
}
?>
Où table_name est le nom de la table (pas de la base de données) que vous souhaiter manipuler.
Une fois le scaffolding initialisé, vous pourrez y accéder grâce au type d'URL suivant :
example.com/index.php/class/secret_word/
Par exemple, en utilisant un contrôleur Blog et abracadabra comme mot secret, vous accéderez au scaffolding de la manière suivante :
example.com/index.php/blog/abracadabra/
L'interface du scaffolding parle d'elle-même et vous permettra d'ajouter, modifier ou supprimer des enregistrements.
Une Dernière Chose :
Etant donné que les fonctions du scaffolding utilisent la clé primaire de la table manipulée, le scaffolding ne peut fonctionner que sur des tables possédant des clés primaires.