lcnlcn
(Lcnlcn)
1
Ciao a tutti vi espongo il mio problema :
Ho creato un widget (prima volta) nella cartella common\widget\struttura\StrutturaWidget.php.
Richiamo il mio widget in questo modo ‘echo StrutturaWidget::widget([‘IdStruttura’ => $model->id]);’
in un file index.php indicando 'use common\widgets\struttura\StrutturaWidget;’
il server mi segnala ‘Class ‘common\widgets\struttura\StrutturaWidget’ not found’
Faccio presente che ho utilizzato Yii2 advanced, non riesco a trovare una soluzione
mi potete dare una mano ?
Hai specificato il namespace nel file StrutturaWidget?
StrutturaWidget.php
namespace common\widgets\struttura;
class StrutturaWidget {
}
lcnlcn
(Lcnlcn)
3
Si questo è il widget
namespace common\widgets\struttura;
use yii\base\Widget;
use app\modules\condomini\models\Strutturacond;
class StrutturaWidget extends Widget
{
public $idStruttura = 0;
public $dati;
public function init()
{
parent::init();
if ($idStruttura == 0) {
$this->dati = Strutturacond::getTreeForGrid();
} else {
$this->dati = Strutturacond::getTreeForGrid($idStruttura);
}
}
public function run()
{
$dataProvider = new ArrayDataProvider(['allModels' => $this->dati, 'key' => 'id']);
return $this->render('index', ['dataProvider' => $dataProvider]);
}
}
C’è un errore nel percorso dove hai salvato il file php.
Infatti è:
common\widget\struttura
invece deve essere (s in widgets)
common\widgets\struttura
lcnlcn
(Lcnlcn)
5
la riga del post iniziale è sbagliata
common\widget\struttura\StrutturaWidget.php
questa è quella giusta
common\widgets\struttura\StrutturaWidget.php
ho controllato il programma ed è giusto
così a colpo d’occhio non vedo altri errori.
Qual è la riga specifica che ti viene segnalata? Puoi riportare la riga dell’errore?
lcnlcn
(Lcnlcn)
7
15161718192021222324252627282930<?php
if ($model->isNewRecord) {
echo $this->render('create', ['model' => $model]);
} else {
echo $this->render('update', ['model' => $model]);
}
?>
<?php
echo StrutturaWidget::widget([‘IdStruttura’ => $model->id])
E’ tutto corretto.
Verificherei ancora che il file StrutturaWidget.php sia salvato nella cartella corretta.
lcnlcn
(Lcnlcn)
9
dopo 24 ore ho risolto: il file StrutturaWidget era sbagliato l’avevo chiamato SrutturaWidget (t) mancante.
mi dispiace
grazie a tutti