web-dev-qa-db-fra.com

Composant personnalisé 3 niveaux profonds

IM construire un composant et im essayant de comprendre comment faire cela

Réservation/Commande/Commande

J'ai une vue des réservations et forme J'ai une vue des commandes et forme

Toutefois...

J'ai du mal à obtenir des réservations pour afficher les commandes en fonction de l'identifiant de réservation. J'ai ajouté au fichier de modèles WHERE enchère = GET [enchère]

Cependant, cela perturbe les choses lorsque vous revenez de la modification d'une commande.

Les étapes sont

  • cliquez sur les réservations
  • afficher les commandes en fonction de l'identifiant de réservation (mon hack personnalisé dans le fichier de modèles pour les commandes)
  • ordre ouvert
  • modifier la commande
  • cliquez sur Enregistrer
  • retourner à la vue des commandes où numéro de réservation = numéro de réservation

Je peux gérer cela en ajoutant un petit bidouillage dans le fichier controllers order.php

mais...

Cela fonctionne pour sauvegarder et revenir en arrière et pourtant il bloque toutes les autres actions comme publier, archiver, etc.

Il doit y avoir une section dans le MVC où je peux mettre le supplément & offre = $ _GET ['offre'] et cela fonctionne à travers toutes les actions de soumission.

Quelle est la bonne façon de construire un composant avec des vues qui sont parents les unes aux autres.

Je suis heureux de fournir du code, mais il y en a beaucoup. Alors peut-être que vous pourriez me diriger d'abord.

quelques autres notes:

voici mon lien vers les commandes de la vue des réservations

JRoute::_('index.php?option=com_tourbookings&view=orders&bid='.(int) $row->id)

Voici mon hack dans les modèles/orders.php

$query->where('a.bid = '.$_GET['bid']);

Jusqu'à présent, cela fonctionne bien, si je clique dessus pour obtenir les commandes en fonction des enchères.

Alors je suis perdu. Parce que si j'essaye de pirater à partir d'ici, je suis complètement coincé car il ne reviendra pas aux ordres basés sur l'enchère sans se planter.

Si je pirate les contrôleurs/order.php (qui a encore changé dans joomla 3.3+)

Je trouve que cela fonctionne et me permet de revenir à la page précédente avec enchère = enchère ci-jointe, mais si j'essaie d'archiver, d'annuler la publication ou de faire quoi que ce soit de ce genre, je suis bloqué.

Cordialement John

1
Jonnypixel

La question est très générale. À première vue:

  • La question dépend de la manière dont vous implémentez un MVC dans Joomla! et quelle sorte de contrôleur suivez-vous. De mon point de vue, j'évite tout problème lié à MVC en relayant simplement FoF , au lieu de vous expliquer comment implémenter un contrôleur natif dans Joomla 2.5, 3 ou 3.x.
  • NE PAS utiliser $ _GET, pour des raisons de sécurité. Au lieu d'utiliser les variables brutes, implémentez JInput. Par exemple, FoF implémente F0FInput, ce qui étend JInput.
2
Anibal