web-dev-qa-db-fra.com

Comment obtenir les noms des parents en composant simple

Je développe mon propre composant pour Joomla mais je suis débutant en PHP et je ne sais pas comment obtenir les noms des parents. J'ai la table #__ records = (par exemple):

id  name           parent
1   ChildName      2
2   ParentName1    0
3   ParentName2    0

et j'ai le champ nom = "parent" type = "liste" à admin .../modèles/forms/record.xml. Si j'ouvre l'enregistrement "ChildName" sur le back-end pour le modifier, je vois la liste déroulante pour choisir le parent mais c'est vide. J'ai besoin d'obtenir les noms des parents, c'est-à-dire "ParentName1, ParentName2" dans cette liste. De quoi ai-je besoin pour écrire admin .../models/record.php à la fonction getItem () ou ailleurs?

1
stckvrw

Faites-le avec type de champ de formulaire SQL

<field 
  name="parent"
  type="sql"
  label="Select parent"
  query="SELECT id, name FROM `#__records` WHERE `parent`='0'"
  key_field="id"
  value_field="name">
    <option value="">Please select parent</option>
</field>

ou créer un type de champ de formulaire personnalisé .

Avec le champ de formulaire personnalisé, vous pouvez afficher les enfants sous les parents, tels que les sélections de catégorie, etc. Cela vous donne plus de flexibilité.

On dirait que vous faites une chose de type catégorie. Si tel est le cas, vous devez utiliser le gestionnaire de catégories intégré. Voir Joomla! Docs: Développement d'un composant MVC/Ajout de catégories pour savoir comment ajouter des catégories à un composant personnalisé.

2
Rene Korss