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;
}
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.