Como cargar modelos en Laravel



   AUTOR PREGUNTA

Publicado 17 noviembre 2014 - 01:32

He empezado a estudiar Laravel y me he topado con un problema usando los modelos del framework, mi principal problema es como hago para cargarlos?

Por ejemplo en CodeIgniter hacia algo como lo siguiente:

$model = $this->load->model('algun_model')

En Laravel cuando lo llamo desde el controlador como Sites::OfUser() funciona de manera perfecta pero cuando llamo lo siguiente Sites::getId() me dice que el metodo deberia ser estatico. Entonces es posible llamar a un metodo sin que sea estatico o tengo que hacer algo en especial para cada modelo.

Mi modelo luce de la siguiente manera:


namespace Models;
use Eloquent;
class Sites extends Eloquent {
public function scopeOfUser($query) {}
public function getId($name) {} }



¿Tienes la misma pregunta? Yo también

 

Publicado 17 noviembre 2014 - 03:33

Debes declararlo static para poderlo usar:
public static function getId($name) { }

 

Publicado 17 noviembre 2014 - 03:33

Para un metodo estatico usa lo siguiente:

$type = Sites ::scopeOfUser($query);

Y si quieres utilizarlo como lo haces en codeigniter hazlo de esta forma:

$model = new Sites ();
$type = $model->scopeOfUser($query);

   AUTOR PREGUNTA

Publicado 17 noviembre 2014 - 03:35

Gracias Jhony!