Bonjour à tous.

J'éprouve quelques difficultés dans la configuration de mon interface
d'admin.

Je ne cherche pas à faire quelque chose bien compliqué, mais je but...
Pour commencer, voici le schéma que j'utilise :

propel:
 page:
  _attributes: { phpName: Page }
  id:          { type: integer, required: true, primaryKey: true,
autoIncrement: true }
  parent_id:   { type: integer, required: true }
  name:        { type: varchar(50), required: true }
  visible:     { type: boolean }
  page_order:  { type: integer, default: 0 }
  created_at:
  updated_at:

 content:
  _attributes:      { phpName: Content }
  id:               { type: integer, required: true, primaryKey: true,
autoIncrement: true }
  page_id:          { type: integer, foreignTable: page,
foreignReference: id, onDelete: cascade }
  title:            { type: varchar(60) }
  content:          { type: longvarchar }
  visible:          { type: boolean }
  created_at:
  updated_at:

Ma table "page" contient toutes les pages du site, et "content" le
contenu des différentes pages. "page" contient un "id", et un
"parent_id", pour dire qu'une page est fille d'une autre. Cela me
permet d'établir une hiérarchie entre les pages du site, pour générer
ensuite un menu.

Donc, là où je coince, c'est lorsque je crée ou j'édite une "page".
Bien sûr, l'id ne peut pas être modifié, en revanche, "parent_id"
apparait comme un champ texte où l'utilisateur entre un chiffre entre
qui correspond à l'ID d'une page déjà créée, ou 0 pour dire que c'est
la racine.

Je ne veux pas ce champ, mais une liste déroulante, pour éviter qu'un
id inexistant soit inséré. Je veux par ailleurs ma liste contienne le
"name" de ma page, et pas les ID, parce que ça parle pas trop.

Je me disais que la fonction __toString solutionnerait le problème,
mais elle n'a d'intérêt qu'avec les clés étrangères j'ai l'impression.

Sauriez-vous comment résoudre le problème ?

Je vous remercie par avance ;)

--~--~---------~--~----~------------~-------~--~----~
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 à