Nuxeo mailing list archives
[CPS-users-fr] Layout et widgets hidden
Cedric Marfil
cedric.marfil at capgemini.com
Jeu 14 Sep 09:00:38 CEST 2006
J'ai trouvé une autre solution.
J'ai ajouté une propriété "initialize_fields" à mon directory. Lors de la méthode renderCreateEntryDetailed, je transfère ces champs du datastructure au datamodel avant de lancer le computeLayoutStrutcure. Ce qui évite de faire du spécifique et reste un tant soit peu générique.
Cordialement
--------------------------------------------------------------------------------
Cédric Marfil
Concepteur Réalisateur Intégrateur Confirmé
Tél. direct: 03.20.65.33.18
Mail: cedric.marfil at capgemini.com
Capgemini
181 rue Jules Delcenserie
59700 Marcq en Baroeul
----- Original Message -----
From: Georges Racinet
To: Cedric Marfil
Sent: Wednesday, September 13, 2006 8:15 PM
Subject: Re: [CPS-users-fr] Layout et widgets hidden
On Sep 13, 2006, at 8:01 PM, Cedric Marfil wrote:
> Merci Georges,
> mais comment me baser sur le datastructure dans la hidden_if_expr ?
> ce n'est pas un objet qui fait parti du contexte
Ah oui, en effet et d'ailleurs le fait de déclarer un widget comme
caché est fait sans datastructure (Widget.getModeFromLayoutMode)
Eh bien, c'est lourd, mais il ne te reste plus qu'à lire la valeur
directement dans REQUEST (la clef doit être widget__<id du widget>)
> <007201c6d75e$ab5aa560$9859440a>
> Cédric Marfil
> Concepteur Réalisateur Intégrateur Confirmé
> Tél. direct: 03.20.65.33.18
> Mail: cedric.marfil at capgemini.com
>
> Capgemini
> 181 rue Jules Delcenserie
> 59700 Marcq en Baroeul
> ----- Original Message -----
> From: Georges Racinet
> To: Cedric Marfil
> Sent: Wednesday, September 13, 2006 7:59 PM
> Subject: Re: [CPS-users-fr] Layout et widgets hidden
>
>
> On Sep 13, 2006, at 7:30 PM, Cedric Marfil wrote:
>
> > Bonsoir,
> > Suite à la création de 2 profils différents pour l'accès à
> > l'application, j'ai un layout avec certains widgets dont
> > l'"hidden_if_expr" est remplie:
> > - Quand je visualise mon formulaire de création, pas de problème.
> > - Quand je saisis des données dans les widgets dont la
> > "hidden_if_expr" est remplie et que je valide le formulaire, ces
> > widget n'enregistrent pas leur valeur
>
> On dirait que l'élimination des widgets cachés de la layout_structure
> se fait effectivement avant la validation. Mais après préparation et
> mise à jour par rapport à la requête de la datastructure. Tu ferais
> mieux de te baser sur le contenu de la datastructure plutôt que sur
> le datamodel.
>
> > - Si en création, un widget n'est pas validé, alors le layout se
> > réaffiche sans les champs dont la "hidden_if_expr" est remplie.
>
> A priori, 'typeMember' n'est plus dans la requête au second clic donc
> ton expression donne datamodel['typeMember'], qui vaut la
> default_expr de ton champ (parce qu'on est en création), à vue de nez
> ça doit être '', ce qui cache le widget.
>
> > - Quand je suis en modification, le formulaire s'affiche et se
> > comporte correctement.
> >
> > Voici à quoi ressemble ma hidden_if_expr:
> > python: context.REQUEST.get('typeMember', datamodel['typeMember']) !
> > = 'professionnel'
> >
> > Je me doute que çà doit avoir un rapport avec le fait qu'au moment
> > de l'enregistrement des données (méthode
> > layout.validate_layout_structure), le widget doit apparaître en
> > hidden car le contexte d'évaluation de l'expression ne correspond
> > plus au formulaire initial, mais je n'ai pas d'idée sur la façon de
> > résoudre ce problème.
> > Peut-être suffit-il de changer mon expression, mais pour y mettre
> > quoi ?
> >
> > Merci d'avance pour vos retours
> >
> > Cordialement
> >
> > <capLogo.gif>
> > Cédric Marfil
> > Concepteur Réalisateur Intégrateur Confirmé
> > Tél. direct: 03.20.65.33.18
> > Mail: cedric.marfil at capgemini.com
> >
> > Capgemini
> > 181 rue Jules Delcenserie
> > 59700 Marcq en Baroeul
> > This message contains information that may be privileged or
> > confidential and is the property of the Capgemini Group. It is
> > intended only for the person to whom it is addressed. If you are
> > not the intended recipient, you are not authorized to read, print,
> > retain, copy, disseminate, distribute, or use this message or any
> > part thereof. If you receive this message in error, please notify
> > the sender immediately and delete all copies of this message.
> >
> > <capLogo.gif>
> > _______________________________________________
> > cps-users-fr
> > Adresse de la liste : cps-users-fr at lists.nuxeo.com
> > Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/
> > cps-users-fr>
>
> ---------
> Georges Racinet Nuxeo SAS
> gracinet at nuxeo.com http://nuxeo.com
> Tel: +33 (0) 1 40 33 71 73
>
> This message contains information that may be privileged or
> confidential and is the property of the Capgemini Group. It is
> intended only for the person to whom it is addressed. If you are
> not the intended recipient, you are not authorized to read, print,
> retain, copy, disseminate, distribute, or use this message or any
> part thereof. If you receive this message in error, please notify
> the sender immediately and delete all copies of this message.
>
>
---------
Georges Racinet Nuxeo SAS
gracinet at nuxeo.com http://nuxeo.com
Tel: +33 (0) 1 40 33 71 73
This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.
-------------- section suivante --------------
Une pièce jointe HTML a été enlevée...
URL: http://lists.nuxeo.com/pipermail/cps-users-fr/attachments/20060914/8b40e6fa/attachment.htm
More information about the cps-users-fr
mailing list
This list archive provided by Nuxeo, the
leaders of open source ECM.
Check out the Nuxeo 5 open source,
standards-based ECM project.