Détail du message 26734.4

Message numéro 4 dans le sujet Ajout de champs personnalisés compte client.

  • 26734.4 en réponse à 26734.3 écrit par Steven Hartz

    16/02/2011 22:01


    Aurélien Ferreira
    Rang : Membre
    Attention : pour ajouter une propriété à votre document 'customer' vous devez injecter cette nouvelle propriété (comme l'a précisé Alexandre dans son post) -> Cela ne se fait pas en copiant simplement le fichier customer.xml dans le répertoire "override/modules/customer/persistentdocument/...".

    Règle général pour injecter une propriété dans un document existant :

    1) Création d'un module spé
    changedev.php add-module <moduleName> <topic|folder>


    2) Création d'un nouveau document (dans le module que nous avons crée précedemment)
    changedev.php create-document <moduleName> <name>


    3) Nous allons préciser à ce document qu'il hérite du document customer en spécifiant extend="modules_customer/customer" et inject="true" pour que ce document vienne "remplacer" le document customer actuel.

    Vous n'avez plus qu'à ajouter votre champ (inutile de recopier les champs existants déjà) :
    <add name="monchampspe" type="String" min-occurs="0" />


    (voir message d'Alexandre plus haut sur la structure du fichier)

    4) Une fois notre nouveau document modifié et sauvegardé, nous l'ajoutons à notre projet:
    changedev.php add-document <moduleName> <name>



    -> Bingo !

    PS : Le champ ne se rajoute pas automatiquement dans vos formulaires backoffice, si cela est nécessaire pensez à les surcharger.

    Édité par Aurélien Ferreira 16/02/2011 22:08

 
1356 membres
Aucun membre connecté