2013-06-10 3 views
1

Comment puis-je réorganiser les champs hérités d'un comportement existant dans une définition de champs que j'ai écrite moi-même? Par exemple, je veux utiliser le champ leadimage (comportement) de plone.app.contenttypes mais au lieu de l'avoir au bas de tous les champs que j'ai définis, je veux l'avoir après la description.Dextérité réorganiser les champs hérités

J'ai essayé comme ceci:

<property name="model_source"> 
    &lt;model xmlns:security="http://namespaces.plone.org/supermodel/security" 
      xmlns:marshal="http://namespaces.plone.org/supermodel/marshal" 
      xmlns:form="http://namespaces.plone.org/supermodel/form" 
      xmlns="http://namespaces.plone.org/supermodel/schema"&gt; 
    &lt;schema&gt; 
     &lt;field name="image" type="plone.namedfile.field.NamedBlobImage" form:after="description"&gt; 
      &lt;title&gt;Image&lt;/title&gt; 
     &lt;/field&gt; 
    &lt;/schema&gt; 
    &lt;/model&gt; 
</property> 

et BTW. Y a-t-il un moyen plus lisible de le faire?

Répondre

1

Je n'ai jamais essayé ceci en utilisant XML mais la documentation Dexterity XML dit que c'est possible; vérifiez les attributs après/avant les attributs.

Je pense que vous pouvez avoir plus de contrôle en utilisant le code Python; consultez la documentation Form schema hints.

+0

merci, j'aime beaucoup mieux le python;) – agittr

2
form.order_after(image1='ILeadImage.image') 

qui a fait l'affaire, était un peu confus au sein de l'exemple de code ...

suivi question: si j'ai 3 champ d'image chacun ayant un champ de légende, dois-je vraiment ajouter cette ligne à tous les champs lui-même? ou existe-t-il un moyen de définir l'ordre de tous les champs à un endroit comme avec la définition de fieldset?

Questions connexes