sql >> Databasteknik >  >> RDS >> Mysql

Hur man hämtar alla poster med främmande nyckel med Laravel

Om du använder Eloquent måste du dra nytta av dess kraftfulla ORM för att få alla citat som tillhör till specifik användare måste du först deklarera relationerna:

modeller/Persona.php

class Persona extends Eloquent {


    public $timestamps = false;

    protected $table = 'persona';

    protected $primaryKey = 'idPersona';

    function quotes() {
        return $this->hasMany('Quote', 'idquote');
    }

}

modeller/Quote.php

class Quote extends Eloquent {

    public $timestamps = false;

    protected $table = 'quote';

    protected $primaryKey = 'idquote';

    function persona() {
        return $this->belongsTo('Persona', 'idPersona');
    }
}

Sedan kan du helt enkelt få önskad persona med alla relaterade citat genom att använda relationen vi definierade ovan:

QuoteController.php

public function index($id) {
    $quotes = Persona::with('quotes')->find($id)->quotes;
    return View::make('quotes.index')->with('quotes', $quotes);
}


  1. Hur du skyddar din MySQL- eller MariaDB-databas från SQL-injektion:Del två

  2. MySQL prestandaoptimering:beställ efter datum och tid-fält

  3. Division i Mysql-fråga

  4. Vad är snabbare, VÄLJ DISTINCT eller GROUP BY i MySQL?