Effectivement, c'est une solution qui a le grand mérite de
fonctionner. ;-)

Je voulais éviter ce genre de choses car je préfère en général ne pas
toucher au coeur du plugin. En l'occurence, la structure des tables en
fait partie.

En fait, l'admin generator est très rapide et pratique pour commencer
rapidement des interfaces. Mais dès qu'on commence à avoir des choses
un peu élaborées (ici : faire une recherche et un tri par rapport aux
champs d'une autre table), il faut probablement se lancer dans des
développements.

Ainsi, j'ai voulu regarder le sfSimpleBlogPlugin pour savoir si dans
l'interface d'admin, il était possible de rechercher un article via un
tag. Et en fait, cela n'a pas été traité. Quand je tente d'ajouter
"tag" ou "tag_as_strings" dans les filtres, le champ se trouve en
lecture seule.

Je me demande en fait si une solution plus propre ne serait pas
d'ajouter une fonction et un template search dans le module
sfGuardUser. On ferait la recherche en tenant compte de la jointure.
On aurait alors une interface ressemblant à l'admin generator mais qui
n'en serait pas une...

On 15 avr, 16:31, "Olivier LOYNET" <[EMAIL PROTECTED]> wrote:
> Bonjour,
>
> Pour ma part j'ai procédé de la façon suivante :
>
> - j'ai ajouté les éléments dans la table sf_guard_user
> (ce n'est pas une très bonne solution mais cela à le mérite de ne maintenir
> qu'une seule table)
>
> - j'ai créé un module dans mon application nommé "sfGuardUser" :
>
> /apps/my_app/modules/sfGuardUser
>
> avec les répertoires :
>
> /apps/my_app/modules/sfGuardUser/config
> /apps/my_app/modules/sfGuardUser/templates
>
> - j'ai recopié generator.yml du plugin dans
> /apps/my_app/modules/sfGuardUser/config
>
> - j'ai désactivé dans le plugin, le fichier generator.yml en le renommant
> generator.yml.off pour que les 2 fichiers ne fusionnent pas (scaffolding)
>
> http://prendreuncafe.com/blog/tag/scaffolding
>
> Et ca fonctionne...
> Toutes les colonnes de la table sont dispo, et l'on peut les utiliser dans
> le tri et dans le filtrage
>
> - Pour n'avoir qu'un seul schéma global, j'ai écris un snippet
>
> http://www.symfony-project.org/snippets/snippet/298
>
> NOTE... : il faut remplacer my_app par votre nom d'application
>
> Olivier
>
> > -----Original Message-----
> > From: [email protected] [mailto:[EMAIL PROTECTED] On
> > Behalf Of NicoD.
> > Sent: Tuesday, April 15, 2008 2:07 PM
> > To: Symfony-fr
> > Subject: [symfony-fr] Re: sfGuardUserProfile et generator.yml
>
> > Sans réponse, je suis parti sur l'option d'étendre l'objet
> > sfGuardUser...
>
> > J'ai donc rajouté des fonctions getNom(), getPrenom(), getCourriel(),
> > setNom(), setPrenom(), serCourriel() qui agissent en fait sur $this-
> > >getProfile()
>
> > J'ai créé des partials qui me permettent d'afficher les champs nom,
> > prenom et courriel dans l'admin generator du sf_guard_user.
>
> > Pour finir, j'ai surchargé la fonction save() du sfGuardUser pour lui
> > dire d'enregistrer également les données du profil associé
>
> > Là, où je commence à bloquer, c'est pour pouvoir lister mes champs et
> > faire des filtres. Il m'affiche bien les champs nom et prénom mais je
> > ne peux les trier, ou encore les filtrer.
>
> > D'après mes recherches, je devais pouvoir y arriver en construisant
> > ma propre méthode doSelectJoinsfGuardUserProfile et en paramétrant
> > peer_method : doSelectJoinsfGuardUserProfile dans l'admin generator.
>
> > Je me suis inspiré de l'article suivant :
> >http://trac.symfony-project.com/wiki/ApplyingCustomJoinsInDoSelect
>
> > Malheureusement, mes champs "nom" et "prenom" restent toujours
> > désespérement non-triables dans l'admin generateur.
>
> > Y a-t-il d'autres fonctions que je dois créer ?
>
> > On 9 avr, 14:28, "NicoD." <[EMAIL PROTECTED]> wrote:
> > > Bonjour,
>
> > > Toujours dans l'optique d'éprouver Symfony, j'ai voulu utiliser
> > > l'admin generator pour gérer les utilisateurs, les groupes et les
> > > permissions.
>
> > > Naturellement, comme l'objet sfGuardUser ne dispose pas de tous les
> > > champs dont on pourrait souhaiter (nom, prenom, courriel...), j'ai
> > > voulu utiliser sfGuardUserProfile que j'ai initialisé comme expliqué
> > > sur le tutoriel.
>
> > > Symfony "m'insulte" si je rajoute simplement "nom" dans la liste des
> > > colonnes à afficher.
>
> > >     list:
> > >       title:   Rechercher un utilisateur
> > >       display: [ =username, nom, created_at, last_login ]
> > >       filters: [ username ]
>
> > > Si j'utilise un partial, je vois s'afficher mes informations, mais je
> > > ne peux pas les trier, ce qui peut être embêtant.
>
> > > Vers quelle tactique dois-je me tourner ?
> > > 1°) Utiliser un admin generator dédié pour le sfGuarsUserProfile ?
> > > 2°) Etendre la classe sfGuardUser ?
> > > 3°) Autres options ?
>
> > > Merci d'avance pour vos réponses.
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à