2010-10-15 16 views
0

J'essaie de supprimer certains champs du formulaire généré par sfDoctrineGuard. Je me fiche du nom ou du courriel de mes utilisateurs, je veux juste qu'ils aient un nom d'utilisateur et un mot de passe.Masquage des champs dans le formulaire sfDoctrineGuard

alt text

J'ai essayé de modifier /lib/form/doctrine/sfDoctrineGuardPlugin/sfGuardUserForm.class.php:

class sfGuardUserForm extends PluginsfGuardUserForm 
{ 
    public function configure() 
    { 
    unset(
     $this['first_name'], 
     $this['last_name'], 
     $this['email_adress'] 
    ); 


    } 
} 

Mais cela n'a rien fait. Suis-je en train d'éditer le bon fichier? La seule façon de faire disparaître ces champs est de modifier le fichier dans le répertoire/plugins /!

plug-ins/sfDoctrineGuardPlugin/lib/form/doctrine/sfGuardUserAdminForm.class.php

Répondre

2

Son probablement utiliser sfGuardUserAdminForm plutôt que sfGuardUserForm - vérifiez l'onglet d'affichage de la barre de débogage et il devrait vous le dire.

Cette classe se trouve dans le plugin, vous devez donc la sous-classer sous le dossier lib/form de votre projet et copier votre méthode configure existante dans la sous-classe.

Vous pouvez ensuite lui demander d'utiliser ce formulaire en éditant gnerator.yml - encore une fois, copiez-le dans le dossier des modules de votre projet/application depuis le plugin si ce n'est déjà fait. Vous devez changer generator/param/config/form/class. Vous devez également supprimer les champs de la forme/clé d'affichage s'ils sont là, ou il va se plaindre qu'ils n'existent pas.

-2

Ces champs sont configurés dans le fichier generator.yml. Mais la suppression ne fonctionnera pas comme prévu. Vous devez supprimer manuellement ces champs de schema.yml, classes de formulaire et de modèle.

+0

Je veux juste les cacher dans le formulaire, ils peuvent toujours être dans la base de données, je m'en fous. – Manu

+0

Je n'ai pas de generator.yml à éditer, il est dans le dossier plugin – Manu

+2

-1, comme vous ne devriez pas éditer le schéma du plugin – benlumley