Bonjour,
je suis face a un soucis dans mon composant. J'ai plusieures vues dans la partie "site" de mon composant.
L'une d'entre (appelons la "Jobseeker") a different layouts (default.php, geninfo.php). J'aimerai que chaque layout ait son propre modele et qu'en fonction du layout, le controlleur chaque le bon modele.
j'ai essaye 2 choses pour le moment.
1. dans le controlleur (RgtMyraControllerJobseeker) de la vue "Jobseeker" j'ai une fonction upgeninfo() ainsi je pensais qu'avec l'URL index.php?option=com_rgtmyra&view=jobseeker&layout =geninfo&task=jobseeker.upgeninfo je seraien mesure de charger le modele necessaire. Cependant je n'y suis pas arrive meme avec le code suivant:
2. ensuite j'ai directement cherche a modifier le controlleur general de mon composant dans la partie "site" avec le code suivant:
La aussi sans succes.
Quelqu'un pourrait-il me dire ou est mon erreur ?
j'ai analyse le code source de Joomla et je ne vois pas ou cela cloche
Un regard externe serait certainement productif.
Merci.
je suis face a un soucis dans mon composant. J'ai plusieures vues dans la partie "site" de mon composant.
L'une d'entre (appelons la "Jobseeker") a different layouts (default.php, geninfo.php). J'aimerai que chaque layout ait son propre modele et qu'en fonction du layout, le controlleur chaque le bon modele.
j'ai essaye 2 choses pour le moment.
1. dans le controlleur (RgtMyraControllerJobseeker) de la vue "Jobseeker" j'ai une fonction upgeninfo() ainsi je pensais qu'avec l'URL index.php?option=com_rgtmyra&view=jobseeker&layout =geninfo&task=jobseeker.upgeninfo je seraien mesure de charger le modele necessaire. Cependant je n'y suis pas arrive meme avec le code suivant:
Code:
// Get the document object. $document = JFactory::getDocument(); // Set the default view name and format from the Request. $vName = JRequest::getCmd('view', 'jobseeker'); $vFormat = $document->getType(); $lName = JRequest::getCmd('layout', 'geninfo'); $model = $this->getModel('Jobseekergeninfo','RgtMyraModel',$config = array('ignore_request' => true)); // Push the model into the view (as default). $view->setModel($model); $view->setLayout($lName); // Push document object into the view. $view->assignRef('document', $document); $view->display();
Code:
public function display($cachable = false, $urlparams = false) { $cachable = true; $user = JFactory::getUser(); $document = &JFactory::getDocument(); $document->addScript( '/components/com_rgtmyra/assets/js/jquery-1.9.1.min.js' ); // set default view if not set JRequest::setVar('view', JRequest::getCmd('view', 'guest')); // Get the document object. $document = JFactory::getDocument(); // Set the default view name and format from the Request. $vName = JRequest::getCmd('view', 'jobs'); $vFormat = $document->getType(); $lName = JRequest::getCmd('layout', 'jobslist'); // Do any specific processing by view. switch ($vName) { case 'jobseeker': if($lName == 'geninfo'){ $lName = JRequest::getCmd('layout', 'geninfo'); $model = $this->getModel('Jobseekergeninfo','RgtMyraModel',$config = array('ignore_request' => true)); } else{ $lName = JRequest::getCmd('layout', 'default'); $model = $this->getModel('Jobseeker','RgtMyraModel',$config = array('ignore_request' => true)); } break; default: $model = $this->getModel($vName); break; } // Get/Create the view $view = $this->getView($vName, $vFormat); // Push the model into the view (as default). $view->setModel($model, true); $view->setLayout($lName); // Push document object into the view. $view->assignRef('document', $document); $view->display(); //return parent::display($cachable, $urlparams); }
Quelqu'un pourrait-il me dire ou est mon erreur ?
j'ai analyse le code source de Joomla et je ne vois pas ou cela cloche
Un regard externe serait certainement productif.
Merci.