IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 PHP Discussion :

Personnaliser colonne d'une liste de l'admin generator [1.x]


Sujet :

PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut Personnaliser colonne d'une liste de l'admin generator
    Bonjour.

    Je commence à m'amuser un peu avec le merveilleux admin generator de symfony mais je m'heurte cependant à un truc qui devrait être pas trop compliqué je pense, mais pas moyen de trouver.

    Je vous explique : j'ai crée un module correspondant à une table de ma base. Cette table contient un champ "image" où est stockée le nom d'un fichier image.
    Et dans l'affichage de ma liste dans l'admin generator je voudrais que plutôt qu'afficher le nom, afficher carrément l'image.
    Pour cela j'ai donc besoin de modifier le contenu de la cellule pour donner un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="..../valeurDuChamp" />
    Y'a t-il un moyen de faire çà avec le fichier de config generator.yml ou bien faut-il surcharger quelque chose du genre : _list_td_tabular.php ?
    Si c'est la dernière solution, où puis-je trouver un exemple de ce qu'il faudrait réécrire, notamment pour avoir accès au valeurs des champs facilement, etc.

    Merci déjà pour vos réponses.

  2. #2
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Le plus simple est d'utiliser un partial.

    Dans mon_modules/config/generator.yml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    list: 
      display: [id, machin, chouette, _ma_colonne]
    • id, machin et chouette sont les colonnes normales
    • _ma_colonne est une colonne qui va utiliser le partial mon_module/templates/
    _ma_colonne.php où tu peux mettre ce que tu veux.

    NB : si ton module gère une liste d'objets de classe MaClasse, la variable qui te permet d'accéder à l'objet dans ton partial se nommera : $ma_classe (ou quelque chose du genre...).

    Donc par exemple, dans _ma_colonne.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    echo image_tag($path_to_image, $options);
    ...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Ok merci, je vais essayer tout çà et je vous tiens au courant.

    Au passage, pour ne pas polluer le forum j'ai une autre question qui n'est pas vraiment liée :

    dans une action executeCreate(), comment accéder aux valeurs du nouvel objet qui va être créé (donc finalement aux valeurs rentrées dans le formulaire ?

  4. #4
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Tu veux faire quoi des données ?

    Certaines données (la clef primaire si elle est auto générée) en sont disponible qu'après la sauvegarde de l'objet.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    En fait j'ai une table qui contient un champ "ordre". Quand j'insère un nouvel enregistrement je veux mettre à jour ma table pour que tous les enregistrements qui ont un ordre supérieur à celui que j'enregistre soit mis à jour avec une nouvelle valeur. Pour cela, il me faut donc récupérer l'ordre du nouvel enregistrement et mettre à jour.

  6. #6
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Tu ne dois faire cela qu'à la création ? Quid si la valeur change en cours de vie de l'enregistrement ?

    Comment doit être modifier la valeur des champs ?

    Que ce passe-t-il si le champ est enregistré et les valeurs des autres non modifiées, est-ce grave ?
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Non effectivement, je dois aussi faire cela lors de l'édition, donc dans le executeUpdate.

    Il me faut donc récupérer soit la valeur du champ dans le formulaire de création et d'édition.
    La seule différence quand il s'agit de l'édition, je fais une opération supplémentaire en fonction de l'ancienne valeur.

    Comme je le disais cela est un champ d'ordre, donc mes algos ressemble à çà :
    (Je n'écrit pas tout mes test d'erreurs)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    insertion (ordre) : 
       descendreSup(ordre)
     
    edition(ancienOrdre, nouvelOrdre):
       monterSup(ancienOrdre)
       descendreSup(nouvelOrdre)

    *la fonction "descendreSup" ajoute 1 à tous les enregistrements dont l'ordre est supérieur à celui passé en paramètre

    *la fonction "monterSup" décrémente 1 à tous les enregistrements dont l'ordre est supérieur à celui passé en paramètre

    Ces fonctions sont en réalité des méthodes de la classe table correspondante.

    Si les autres valeurs du formulaire sont changées, bien évidemment il faudra que je prenne en compte ces changements, donc en gros, le formulaire doit faire son travail normal (pour les autres champs mais aussi celui de l'ordre) mais il faut juste que je fasse une action supplémentaire sur les enregistrements déjà existants dans la table.

  8. #8
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Et si tu mettais ce code plutôt dans l'objet du modèle ?

    Quelque soit celui qui modifie tu fais la modification partout, non ?
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Dans la fonction save ?

    J'y avais pensé. Mais après il faut que je différencie l'édition de la modification et que je stocke à un endroit ou à un autre l'ancienne valeur avant de mettre la nouvelle.
    Du coup çà complexifie pas mal.

    Mais pour ce qui est des méthodes qui font tout le travail elles sont dans le modèle. Il me faudrait juste en entrée cette nouvelle valeur.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Bon alors du coup j'ai tenté çà :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    public function save(Doctrine_Connection $conn = null){
            if($this->isNew()){
                $grp_table = Doctrine_Core::getTable("Groupe");
                $grp_table->descendreSup($this->getOrdre());
                parent::save($conn);
     
            }else{
                /*On récupère l'ordre non modifié qui est toujours dans la base de donnée*/         
     
                $grp_table = Doctrine_Core::getTable("Groupe");
     
                $ancien_ordre = $grp_table->getOrdreById($this->getIdGroupe());
     
                parent::save($conn);            
            }        
        }
     
     
    #La méthode getOrdreById($id) dans le fichier GroupeTable.class.php : 
    public function getOrdreById($id){
            if(is_null($id))$id=5;
            $q = $this->createQuery("g")
                ->select("g.ordre")
                ->where("g.idGroupe=?", $id);
     
            $result = $q->fetchOne();
            return $result['ordre'];
        }

    Le problème c'est qu'il semblerait que ma méthode getOrdreById ne fonctionne pas.
    Le parent::save($conn) n'est pas exécuté dans le cas où le isNew() est faux (tout marche bien quand c'est vrai).

    Le problème vient de $id car quand je met un chiffre à la place tout se passe bien. Pourtant il est bien renseigné (pas null) et si je transforme la requête (juste pour tester la valeur de "id") en :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $q = $this->createQuery("g")
                ->update("g")
                ->set('ordre', $id);
    mon id passe très bien et la mise à jour se fait bien avec l'id dans toute la table (résultat sans intérêt, juste pour le test).

    Note : si je fais la requête dans la méthode "save" sans passé par le GroupeTable, cela ne passe pas non plus.

    Une idée d'où cela peut-il venir ?

  11. #11
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut


    Je ne suis absolument plus ce que tu fais...
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Bon je vais essayé de résumer donc.

    • Note : Nous avons changé de sujet au cours de la conversation, le problème initial est réglé, nous traitons un nouveau problème
    • Je travaille sur une table nommée "Groupe" qui possède un champ "ordre" avec Doctrine, j'ai donc deux classes : Groupe.class & GroupeTable.class
    • Je travaille sur le backend (création & édition)
    • Je veux que quand on insère un nouvel enregistrement dans ma table et que je définis l'ordre, tous les enregistrements dont l'ordre est supérieur à l'ordre de mon nouvel enregistrement s'incrémente.
      Exemple:
      Enregistrements existants :
      {nom : groupe 1, ordre : 1}
      {nom : groupe 2, ordre : 2}
      {nom : groupe 3, ordre : 3}
      {nom : groupe 4, ordre : 4}
      {nom : groupe 5, ordre : 5}

      Cas 1 :Je veux ajouter un enregistrement {nom : groupe x, ordre : 2}
      Processus : Je dois augmenter l'ordre des enregistrements qui ont un ordre supérieur à 2 afin de placer mon nouvel enregistrement.
      J'obtiendrais donc :
      {nom : groupe 1, ordre : 1}
      {nom : groupe x, ordre : 2}
      {nom : groupe 2, ordre : 3}
      {nom : groupe 3, ordre : 4}
      {nom : groupe 4, ordre : 5}
      {nom : groupe 5, ordre : 6}

      Cas 2 :Je veux éditer le groupe 2 d'ordre 2 et changer son ordre en 4 (le transformer en {nom : groupe 2, ordre : 4}).
      Processus :
      a) Je dois décrémenter tous les ordres supérieurs à l'ancienne valeur (2) car l'enregistrement ne sera plus à cette place. J'obtiens donc :
      {nom : groupe 1, ordre : 1}
      {nom : groupe 3, ordre : 2}
      {nom : groupe 4, ordre : 3}
      {nom : groupe 5, ordre : 4}
      =>résultat intermédiaire

      b) Je dois incrémenter tous les ordres supérieurs ou égaux à la nouvelle valeur (4).
      J'obtiens donc :
      {nom : groupe 1, ordre : 1}
      {nom : groupe 3, ordre : 2}
      {nom : groupe 4, ordre : 3}
      {nom : groupe 5, ordre : 5}
      =>résultat intermédiaire

      c) Je positionne mon nouvel enregistrement avec l'ordre
      {nom : groupe 1, ordre : 1}
      {nom : groupe 3, ordre : 2}
      {nom : groupe 4, ordre : 3}
      {nom : groupe 2, ordre : 4}
      {nom : groupe 5, ordre : 5}
      =>RÉSULTAT SOUHAITÉ
    • Après nos discussions diverses, j'ai donc décidé de mettre ces fonctionnalités dans le modèle.
    • Je dispose de deux fonctions de ma classe "GroupeTable" nommée monterSup($ordre) et descendreSup($ordre) qui, respectivement, décrémente les ordres des enregistrements dont l'ordre est supérieur au paramètre et, incrémente les ordres des enregistrements dont l'ordre est supérieur au paramètre. Ces méthodes semblent bien fonctionner.
    • Le code pour faire ceci est placé dans la méthode "save()" de la classe "Groupe".
    • Voici le code :
      Code php : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
       
      public function save(Doctrine_Connection $conn = null){
              if($this->isNew()){
                  /**TOUTE CETTE PARTIE FONCTIONNE A MERVEILLE**/
                  $grp_table = Doctrine_Core::getTable("Groupe");
                  $grp_table->descendreSup($this->getOrdre());
                  parent::save($conn);
       
              }else{
                 /**LA ÇA SE COMPLIQUE**/
                  $q = Doctrine_Query::create()
                  ->select("ordre")
                  ->from ("Groupe')
                  ->where("idGroupe=?", $this->getIdGroupe());
       
                  $result = $q->fetchOne();
                  $ancien_ordre = $result['ordre'];
                  $nouvel_ordre = $this->getOrdre();
       
                  $grp_table = Doctrine_Core::getTable("Groupe");
                  $grp_table->monterSup($ancien_ordre);
                  $grp_table->descendreSup($nouvel_ordre);
                  parent::save($conn);
               }
    • Dans le code précédent, la requête pour récupérer l'ancien ordre dans la table ne semble pas fonctionner. En effet, le code qui se trouve après ne s'exécute pas. La modification dûe à l'édition n'est pas enregistrée dans la base (Je pense que parent::save($conn) n'est pas exécuté). Pourtant la valeur de $this->getIdGroupe() est correcte.
      Note : lors de mes tests, j'ai commenté les lignes
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      $grp_table = Doctrine_Core::getTable("Groupe");
                  $grp_table->monterSup($ancien_ordre);
                  $grp_table->descendreSup($nouvel_ordre);
      mais cela n'influe en rien le fait que cela fonctionne ou non.


    Voilà j'espère à voir été approximativement clair. Mon problème est donc le dernier point de la liste.

  13. #13
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Quant tu résumes ! C'est ... conséquent Je ne te confierais pas "Guerre et paix" à résumer

    Pour ta requête, je l'aurais écrite ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $result = $this->findOnByIdGroup( $this->getUdGroupe() );
     
    ou
    $result = $this->createQuery( 'o' )
              ->where('o.idGroupe = ?", $this->getIdGroupe() )
              ->fetchOne();
    Mais avant tout, je te propose de jeter un oeil sur ce plugin : csDoctrineActAsSortablePlugin.

    Désolé, j'aurais dû t'y aiguiller plus tôt, mais je me suis laisser entrainer par les détails et j'en ai oublié le fond
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Bon d'accord c'était + un regroupement qu'un résumé !

    Ahahah un plugin, çà, çà va arranger mon affaire :p
    Bon je vais d'abord essayer la requête parce que vu que tout le reste est déjà implémenté, çà me coûte rien mais sinon je vais me tourner vers le plugin.

    Merci beaucoup pour votre aide.

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Bon cela ne fonctionnait toujours pas, du coup je me suis tourné vers le plugin.
    Seul regret, la chose que j'essayais de faire n'est pas intégrée.

    Je peux bien monter et descendre (comme je le pouvais déjà) mais si je veux éditer et choisir un autre ordre, il me dit qu'un enregistrement existe déjà avec l'ordre (au lieu de l'autoriser et de décaler le reste).

    Mais en attendant merci bien pour votre aide et aussi de m'avoir signalé le plugin. Et franchement je ne vois pas ce qui peut clocher la méthode que j'avais tenté, mais bon...

    EDIT : ce qui est curieux c'est qu'il y a une fonction : moveToPosition(pos).
    Je devrais donc pouvoir le faire, en bidouillant je ne sais où :p

  16. #16
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Citation Envoyé par Kimado Voir le message
    [*] Dans le code précédent, la requête pour récupérer l'ancien ordre dans la table ne semble pas fonctionner. En effet, le code qui se trouve après ne s'exécute pas.
    C'est normal, ça lance une exception car il y a une erreur sur les délimiteurs de chaînes dans la clause from : tu mélanges guillemets simples et guillemets doubles.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $q = Doctrine_Query::create()
                ->select("ordre")
                ->from ("Groupe")
                ->where("idGroupe=?", $this->getIdGroupe());
    devrait mieux fonctionner.

    En outre, il vaudrait mieux essayer de faire ces traitements dans la méthode doSave(). Symfony traite toutes ces opérations dans une transaction, doSave() est incluse dans la transaction, pas save().

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Pour les délimiteurs, erreurs de recopiage, désolé

    J'ai essayé la méthode doSave mais elle ne semble pas appelée. Voici les signatures que j'ai essayé dans ma classe Groupe :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    protected function doSave(Doctrine_Connection $conn = null){
    }
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public function doSave(Doctrine_Connection $conn = null){
    }

    Pour essayer j'ai mis un simple update statique dedans mais rien ne fonctionne.

  18. #18
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    Citation Envoyé par Kimado Voir le message
    Pour les délimiteurs, erreurs de recopiage, désolé
    Il me semblait aussi que c'était un peu gros...

    Pour le doSave(), je me suis mélangé les pinceaux, c'est une méthode de sfFormObject. Ca m'apprendra à répondre en n'ayant pas l'API à portée de la main. Désolé pour la fausse piste.

  19. #19
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Points : 74
    Points
    74
    Par défaut
    Ok pas de souci, je pense que je vais en rester là et tanpis pour l'édition.
    Merci à tous pour votre aide. Si toutefois je me remet dessus et que je trouve une solution adéquate je posterai ici.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 14/05/2007, 15h34
  2. Réponses: 4
    Dernier message: 18/04/2007, 23h23
  3. Réponses: 2
    Dernier message: 10/04/2007, 11h58
  4. Réponses: 10
    Dernier message: 27/03/2007, 12h21
  5. [C++ 6.0] : Cacher une colonne dans une liste
    Par Mirna dans le forum MFC
    Réponses: 1
    Dernier message: 08/02/2007, 19h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo