Scaffolding

Catégorie : Manuel
Cet article est une traduction de Scaffolding.

Le scaffolding est une fonctionnalité de CakePHP vous permettant de démarrer rapidement un projet.
Son utilité est très simple à expliquer ! Il permet la création automatique d'actions ajout, modification, suppression et visualisation des données de votre base avec les vues qui vont avec.

Pour ajouter le scaffolding dans votre application, placez, dans votre controller, la variable $scaffold.

class CategoriesController extends AppController
{
    var $scaffold;
}
?>


Une chose chose importante à noter avec le scaffolding, c'est qu'il considerera tout champ se terminant par _id comme étant la clé étrangère du nom de la table précédant l'underscore.
En conséquent, si vous avez des uplets en relation avec d'autres uplets de la même table, mieux vaut appeller la clé parentid que parent_id.

De même, si vous avec un champ categorie_id et que vous avez correctement configuré votre model, vous verrez une liste déroulante avec les données de category dans vos actions add/edit/show.
Pour définir quel champ doit être affiché, définissez le $displayField dans le model des catégories.
Par exemple :

class Title extends AppModel
{
    var $name = 'Title';

    var $displayField = 'title';
}
?>


Personnalisation des vues
Si vous désirez personnaliser le contenu de vos vues, vous pouvez les créer manuellement. Cette technique n'est pas conseillée dans un environnement de production. Mais elle peut vous permettre utile pour des essais.

Si vous désirez modifier les vues, vous devrez les créer vous même, dans les fichiers suivants pour uniquement un controller :
/app/views/posts/scaffold/index.scaffold.thtml
/app/views/posts/scaffold/show.scaffold.thtml
/app/views/posts/scaffold/edit.scaffold.thtml
/app/views/posts/scaffold/new.scaffold.thtml

Et si vous souhaitez les personnaliser pour tous vos controllers :
/app/views/scaffold/index.scaffold.thtml
/app/views/scaffold/show.scaffold.thtml
/app/views/scaffold/edit.scaffold.thtml
/app/views/scaffold/new.scaffold.thtml

Cependant, si vous en arrivez à ce point, peut être est-il temps de penser à arreter le scaffolding et à passer et à construire vous même vos actions.

Un autre outil de Cake peut vous aider : Bake. Bake génèrera automatiquement le code de votre scaffold, que vous n'aurez alors plus qu'à personnaliser à votre guise.



Identification

Statistiques

153 utilisateurs
32 articles
4 connectes

CakePHP-fr

Actualites

PHP 5.2.2 et PHP 4.4.7
L'équipe de développement de PHP ...
Poste le : 04/05/2007


Nouvelles version CakePHP
Deux nouvelles versions de Cake voient le jour ...
Poste le : 06/04/2007


PHP 4.4.6
L'équipe de développement de PHP ...
Poste le : 01/03/2007


Sortie de PHP 5.2.1
L'équipe de développement de PHP ...
Poste le : 09/02/2007


Cake 1.1.13.4450 et 1.2.0.4451alpha
PhpNut nous l'annonce aujourd'hui, les versions...
Poste le : 05/02/2007


Liens