Laravel 4: Wybierz wiersz, jeśli istnieje relacja poprzez zapytanie o relację

Próbuję wysłać zapytanie do tabeli produktów i chcę, aby zwróciła kolekcję, jeśli istnieje relacja.

Iteracja 1 poniżej zapytaniawszystko wiersze w tabeli produktów i leniwy ładuje tabelę metali, jeśli$name mecze. To jest źle.

Moja trasa:

Route::group(array('prefix' => '{api}/v1'), function()
{
    Route::controller('products', 'Api\V1\ProductController');
});

Mój kontroler:

public function getFilter($metal = null) {
    $products = $this->product;
    if ($metal) {
        $products->with('metal', function($query, $metal) {
            $query->where('name', $metal);
        });
    }
    return Response::api($products->get());
} 

chcętylko $products aby wyświetlić, jeślimetal.name = $metal. na przykład coś jak:

$this->products->where('metal.name', $metal)->get;

Rozwiązanie wykorzystujące część odpowiedzi Glad To Help:

Zapewnia to alternatywne podejście 2, bez potrzeby łączenia.

http://paste.laravel.com/WC4

questionAnswers(1)

yourAnswerToTheQuestion