1 vue, plusieurs layouts et modeles

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • 1 vue, plusieurs layouts et modeles

    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:
    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();
    2. ensuite j'ai directement cherche a modifier le controlleur general de mon composant dans la partie "site" avec le code suivant:
    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);
    		
    	}
    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.
    web: http://www.korcule-kolieska.sk
    What does not kill you, makes you stronger.

Annonce

Réduire
Aucune annonce pour le moment.

Partenaire de l'association

Réduire

Hébergeur Web PlanetHoster
Travaille ...
X