J'essaie de créer un module backend dans lequel, sur ma page d'édition, j'utilise un admin-2column-left
layout.
Je veux avoir un formulaire sur chaque onglet, mais je ne comprends pas comment je peux le faire.
Idéalement, je voudrais savoir comment affecter différents formulaires uiComponents
à différents onglets ou comment définir unuiComponent
pour mon formulaire, tout en pouvant affecter quel groupe de champs est associé à quel onglet.
Ma situation spécifique, qui provoque cette question, est que je veux avoir un formulaire standard sur un onglet (plusieurs entrées de texte), et sur un autre onglet, je veux avoir un dynamicRows
composant d'interface utilisateur. Nous avons appelé ces onglets Éléments principal et Ligne.
Actuellement, j'implémente ceci comme suit: Main est défini dans la
_prepareForm
méthode dans son bloc, qui est une extension de classeForm\Generic
. Ce formulaire apparaît et fonctionne correctement jusqu'à ce que j'ajoute les lignes dynamiques.
Mon fichier de mise en page contient un code pour ajouter l'onglet Principal et affecter un bloc de contenu. En outre, il contient un conteneur nommé line_items
, qui contient un uiComponent
pour le formulaire contenant des lignes dynamiques.
L'onglet Éléments de campagne est créé dans la _beforeToHtml
méthode de Widget\Tab
, et son contenu est attribué à l'aide d'un appel à getChildHtml
sur un conteneur line_items.
L'onglet fonctionne et contient la structure correcte, ce qui me permet d'ajouter et de supprimer des lignes.
Le problème est que lorsque je soumets la page, seules les entrées de l'onglet Postes sont soumises.
Je sais donc que je n’ai pas configuré cela correctement et que j’ai besoin d’un moyen de lui demander de suivre et de soumettre tous les éléments du formulaire. La plupart de cette implémentation est dérivée de mes tentatives de désossage de la configuration du formulaire Catégorie Product Attributes, similaire à ce que je souhaite faire.
Quelqu'un a une idée à ce sujet?
Réponses:
Utilisez le code suivant pour créer des onglets avec un seul formulaire à l'aide de UI-Component
Créer un élément de formulaire
Ce code affichera 2 onglets sur le formulaire avec les champs de formulaire associés.
J'espère que cette solution fonctionne pour vous
la source