web-dev-qa-db-fra.com

Joomla-Development: Définir la vue par défaut

Je voudrais configurer une vue par défaut. Si mon composant est appelé en utilisant administrator/index.php?option=com_bestia&view= Je reçois l'erreur:

404 Vue non trouvée [Nom, type, préfixe]: bestia, html, bestiaView

com_banners fait mieux: administrator/index.php?option=com_banners&view= a pour résultat d'afficher la première page du composant bannières.

Ceci est mon contrôleur:

classe BestiaController étend JControllerLegacy {

protected $default_view         =           'cpanel';

/**
 * display function.
 * 
 * @access public
 * @param bool $cachable (default: false)
 * @param bool $urlparams (default: false)
 * @return void
 */
public function display($cachable = false, $urlparams = false) 
{
    require_once JPATH_COMPONENT . '/helpers/bestia.php';

    $view       =   $this->input->get('view', 'cpanel');
    $layout     =   $this->input->get('layout', 'default');
    $id         =   $this->input->getInt('id');

    // Check for edit form.
    if ($layout == 'edit' && !$this->checkEditId('com_bestia.edit.'.$view, $id))
    {
        // Somehow the person just went to the form - we don't allow that.
        $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
        $this->setMessage($this->getError(), 'error');
        $this->setRedirect(JRoute::_('index.php?option=com_bestia&view='.$view.'s', false));

        return false;
    }

    parent::display($cachable, $urlparams);

    return $this;
}
1
MyFault

Je pense que vos fichiers de vue sont manquants ou que la classe de vue n’est pas nommée correctement (correct est [Préfixe] Voir [Nom de la vue]).

Si je change le nom de

administrator/components/com_banners/views/ to /viewx/

Je reçois l'erreur suivante:

An error has occurred.
500 View not found [name, type, prefix]: banners, html, bannersView

Revenez dans/vues/- et l'erreur disparaîtra.

3
iamrobert