Domanda

Ho letto e seguito la documentazione trovata qui http://laravel.com/docs/eloquent E ho provato alcuni degli esempi che ho trovato qui Ecco il codice che ho finora Modello

dbelloquent.php

<?php
class dbeloquent extends Eloquent {

   protected  $table = "users";


    public  function showTbl()
        {
             dd(dbeloquent::$table);
        }
}

//end of model
?>

    route.php

<?php
Route::get('/', function () {
    $model = new dbeloquent();   
    dd($model->someFunction());
});
?>
.

Voglio mostrare i miei tavoli prima ma qui è quello che sto avendo

.

Accesso alla proprietà statica non dichiarata: Dbeloquente :: $ Tabella

Qualcuno aiutami per favore

È stato utile?

Soluzione

La tua classe Dbeloquente si estende Modello Classe sullo sfondo.L'alias eloquente punta alla classe del modello, nell'app app / config / app.php file

'eloquente'=> 'Illuminate \ database \ eloquente \ modello'

Protected $ Table La proprietà è estesa dal modello astratto modello , e non è statico, quindi non è possibile ridisegnarlo (statico o nostico).È possibile accedere alla proprietà dal modello di base è utilizzando:

__get($key) method
.

Ma il problema è in quale punto di esecuzione la tua proprietà $ Table è visibile, poiché è protetto e modificato in fase di esecuzione.

Alla fine, non è dichiarato e definito per essere utilizzato in modo tale - La laravel è in cerca di questa proprietà.Prova a rintracciare le chiamate e probabilmente troverai cosa sta succedendo dentro. Non complicare le cose più di allora dovrebbero essere complicate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top